• 締切済み

windows でのvimのにimap

windows版のgvim(ver 7.2)を使っています。 ファイルからの読み込みを楽に行いたくて、つぎのキーバインドを作りました。 map <F12> :r d:\vi\tmp\test.txt<CR> normal modeではうまくできるのですが、挿入モードでも同じことを行いたいと 次のキーバインドを作りましたが、うまく動作しません。 map! <F12> :r d:\vi\tmp\test.txt<CR> この場合は :r d:\vi\tmp\test.txt という文字列が表示されてしまいます。 normal modeと同じ動作をさせるには、どのようにすればよいのでしょうか。

みんなの回答

回答No.1

<ESC>を追加して、 map! <F12> <ESC>:r d:\vi\tmp\test.txt<CR> としたらどうでしょうか。ただし、これだと挿入モードからは抜けてしまいます。

関連するQ&A

  • 微分方程式

    微分の計算が出来ません。解を教えてください。お願いします。 Vo=-CR(d/dt)Vi という式がありまして、 C=1000^-12 R=200^3 Vi=Esinωt E=220^-3 ω=62800 (入力周波数fが10kHzなので。ω=2πf) t=0.1^-3sec Viの時間微分でVoが求まる までが分かっている数値です。ぜひともよろしくお願いします。

  • Windows漢字フォルダ名の扱い(その2)

    先回に引き続きお伺いします。 ■フォルダツリー体系が次のようになっているとき、 D:\TEMP ├─フォルダ名の末尾に機能 │ test1.txt ├─フォルダ名の末尾に表 │ test2.txt ├─途中に機能がある │ test3.txt └─途中に表がある test4.txt ■次のスクリプトを処理させるのですが、 #!perl use strict; &subdir($ARGV[0]); sub subdir { my($dir) = $_[0]; opendir(DIR,"$dir") || die "'$dir' $! stopped"; foreach(sort readdir(DIR)){ next if(/^\.+/); # '.' '..' はパス if(-f "$dir\\$_"){ print "'$dir\\$_'\tはファイルです\n"; }elsif(-d "$dir\\$_"){ print "'$dir\\$_'\tはフォルダです\n"; &subdir("$dir\\$_"); }else{ print "'$dir\\$_'\tは何ですか?\n";#出て欲しくない } } closedir(DIR); } ■結果は、次のようになります。 (※フォルダ名の末尾に特殊な漢字コードがある所が判定できない) C:\>test.pl d:\temp 'd:\temp\フォルダ名の末尾に機能' は何ですか? 'd:\temp\フォルダ名の末尾に表' は何ですか? 'd:\temp\途中に機能がある' はフォルダです 'd:\temp\途中に機能がある\test3.txt' はファイルです 'd:\temp\途中に表がある' はフォルダです 'd:\temp\途中に表がある\test4.txt' はファイルです 先回、色々と教わったこと use encoding "Shift_JIS"; や 局所的に $dir を decodeさせるなどしても上手く行きません。良い方法があれば教えてください。

    • ベストアンサー
    • Perl
  • SingleCompile.vimでmsvc110

    C++の入門書を読んでプロコンの勉強をし始めた程度のプログラミング能力の者です. 最近vimを使い始め, http://d.hatena.ne.jp/osyo-manga/20110530/1306715525 http://d.hatena.ne.jp/osyo-manga/20110302/1299080946 ここを見ながらこれまで使っていたVisualStudio2012のコンパイラをvimのプラグインSingleCompileに対応させました. 現バージョンではvs2012に非対応だったため, 設定ファイルに存在するvs2010のテンプレートをコピペ,適宜修正し対応させました. :SCCompile としてみると, :!cl -o test C:\ ... \test.c >C:\Users\ユーザー名\AppData\Local\Temp\VIeBC16.tmp 2>&1 と表示され,一応コンパイルには成功するのですが, :cope で見てみると || Microsoft(R) C/C++ Optimizing Compiler Version 17.00.50727.1 for x86 || Copyright (C) Microsoft Corporation. All rights reserved. || || cl : コマンド ライン warning D9035 : オプション 'o' の使用は現在推奨されていません。今後のバージョンからは削除されます。 || test.c || Microsoft (R) Incremental Linker Version 11.00.50727.1 || Copyright (C) Microsoft Corporation. All rights reserved. || || /out:test.exe || /out:test.exe || test.obj と表示されます. 今までVisualStudio2012ではリンクやコンパイルの流れがどのようなものなのかわからずに使っていたので, 「cl : コマンド ライン warning D9035 : オプション 'o' の使用は現在推奨されていません。今後のバージョンからは削除されます。」 の意味が意味が理解できません. 解決策を教えてください.

  • 30*30のマップファイルを2次元配列に読み込むには。

    こんにちは。 30*30とかいうマップファイル ex(map.txt). 0,0,0,0,0 2,3,0,0,0 2,2,1,1,1... こんな感じのファイルを2次元配列に読み 込みたいのですが。 ゲームに使いたいので、横をX座標に対応 させ、map[1][2]=2,map[3][2]=1としたいのです。 次のように作ったのですがうまくいきません。 $temp=file("map.txt"); foreach($temp as $tempmap){ $i=0; $map[$i]=explode(",",$tempmap); $i=$i+1; } マップの読み込みなどをしたことある人など、 なにか分かる人がいましたら、お願いします。 (もっと簡単な方法など)。

    • ベストアンサー
    • PHP
  • 全複素平面上で正則な関数f(z)は

    全複素平面上で正則な関数f(z)は lim_[r→0] ∫_Cr f(z) dz = 0 を満たすことを示せ。ただし、Cr = { r*exp(iθ) | 0≦θ≦π } (r>0の上半円周) 考えた証明の方針: 単純閉曲線C:= Cr + Cr' (ただし、Cr': = { x | -r≦θ≦r } )と定め、 まず、コーシーの積分公式を証明。すなわち、∫_C f(z) dz = 0 次に、∫_C f(z) dz = 0 に r→0として題意を示すと思いました。 しかし、∫_-r^r f(z)dz =0になることが言えなくて、つまづいています…。 どなたか知恵を貸してください。

  • ドラッグ&ドロップ処理

    いかのようなBAT(attrib.bat)をデスクトップに作成しました。   attrib -r /S %1 以下のようなフォルダー構成だとします。 D:\test D:\test\test2 D:\test\01.txt D:\test\test2 D:\test\test2\02.txt D:\test\test2\03.txt でエキスプロラーからtestフォルダーを  attrib.batにドラッグ&ドロップでファイル(01,02,03)の読み取り専用のフラグを  解除しようとしましたが上手く処理できません。 どうしたら、上手く処理できるようになりますか ?

  • ハイパスフィルタ

    ハイパスフィルタ回路のゲイン特性を求めたいのですが、 R1=10kΩ R2=50kΩ C=0.001μΩ のとき入出力ゲイン特性を求めたいのですが、 G=20log|(Vo/Vi)|=20log|(R2/R1)(j(f/fc)/(1+j(f/fc))| =20log((R2/R1)/(√(1+(f/fc)^2)) これでゲインを求められるのでしょうか? fは自分で適当な値を入れます。 ちなみに、fc=1/(2πCR1)で求めて、fc=100/π です。

  • バッチファイル 2ファイルをfor /f処理したい

    バッチファイルで別の2つのファイルを読み込んでfor /f処理するには 変換前のファイルのファイル名と 変換後のファイルのファイル名が それぞれ別のファイルに書かれていて この2つのファイルを読み込んで リネームするバッチファイルを 記述したいのですが 2つのfor /fを使った場合、 一方が他方にネストされてしまうのですが このような場合は どのように記述するのでしょうか。 例えば、 変換前のファイル名が書かれたファイル(s.txt)と 変換後のファイル名が書かれたファイル(d.txt) がある場合、 abc.txtをqrs.txt d f.txtをtuw.txt ghi.txtをx z.txt  : にリネームしたいのですが もちろんtest1.batではうまくいきません。 ---test1.bat------------------- for /f %%a in (s.txt) do for /f %%b in (d.txt) do ren "%%a" "%%b" ------------------------------ ---s.txt---------------------- abc.txt d f.txt ghi.txt : ---d.txt---------------------- qrs.txt tuw.txt x z.txt : ------------------------------ 以下の sd.txt のように1つのファイルにして test2.bat のようにすればできますが s.txt と d.txt の2つのファイルのままで処理するには どのように記述すればよいのでしょうか。 ---test2.bat------------------- for /f "tokens=1,2 delims=," %%a in (sd.txt) do ren "%%a" "%%b" ---sd.txt---------------------- abc.txt,qrs.txt d f.txt,tuw.txt ghi.txt,x z.txt : ------------------------------- よろしくお願いします。(Windows7)

  • バッチファイル フォルダ名をファイル名に置き換える

    ある複数フォルダに格納されているファイルを、フォルダ名に リネームするバッチファイルを作成したいです。 ●リネーム前 C:\リネーム\あいうえお\data.txt C:\リネーム\かきくけこ\data.txt C:\リネーム\さしすせそ\data1.txt C:\リネーム\さしすせそ\data2.txt C:\リネーム\たちつてと\data1.log C:\リネーム\たちつてと\data2.log C:\リネーム\なにぬねの\data.log ↓ ●リネーム後 C:\リネーム\あいうえお\あいうえお.txt C:\リネーム\かきくけこ\かきくけこ.txt C:\リネーム\さしすせそ\さしすせそ 1.txt C:\リネーム\さしすせそ\さしすせそ 2.txt C:\リネーム\たちつてと\たちつてと 1.log C:\リネーム\たちつてと\たちつてと 2.log C:\リネーム\なにぬねの\なにぬねの.log 知識がなく申し訳ありませんが、お助け願います。。 pause cd c:\リネーム dir /s /b C:\リネーム\ > file.tmp for /f "delims=" %%F in (file.tmp) do ( for /f "delims=\ tokens=3" %%D in ("%%F") do ( REN %%F C:\リネーム\%%D\%%D%%~xF )) del file.tmp pause どうもうまくいきません。。。

  • JISコードでファイル出力したい。

    大変お世話になっております。 memo6というstringに”前前前前前前前前”という文字を入れて、それをtest_binにバイトで入れてそれをfopenでバイナリファイルを出力しました。 作成されたバイナリファイルを見てみると”91 4F 91 4F 91 4F 91 4F 91 4F....”とshift jisコードで出力されているのですが、これを”4D 52 4D 52 4D 52 4D 52 4D 52 4D 52....”のjisコードで出力する方法をご教授いただきますようお願いいたします。 char test_bin[60]; //name strcpy((char *)tmp_bin,memo6.c_str()); for(int j=0;j<32;j++) { test_bin[j] = tmp_bin[j]; }