1 :
名無しさん@お腹いっぱい。 :
2008/02/03(日) 23:47:18
日本語入力だろうがなにだろうが、非モーダルエディタはモーダルエディタには 勝てない。こんなん当たり前。
10 :
masa :2008/02/04(月) 00:06:49
何に勝てないの?
これすげー使いにくいよ!!!!俺がバカだから? 慣れれば手放せなくなるのかな・・・
君が始めてPC使ったときも、不便だと思わなかった?
>>1 乙
そして、:g!/hoge/d で grep。これ豆知識な。
>1乙 そして、C/C++ でコーディングしてて switch (i) { case hoge: foo(); を switch (i) { case hoge: foo(); と自動でインデントするには、set cinoptions+=:0。 これ豆知識な。
>>1 乙であります!
C++ でコーディングしてて
class Foo {
public:
Foo();
を
class Foo {
public:
Foo();
と自動でインデントするには、set cinoptions+=g0。
これも豆知識な。
>>1 乙
そして前スレ1000のおかげでささやかな幸せがおとずれた
" ささやかな幸せ noremap ; : noremap : ;
>>12 すげぇ・・・ここまで翻訳してあるとは。感動した。
Kaoriyaのwindows版7.1.145を使っております。 異体字変換スクリプトを書いておりまして、その 時に気がついたのですが、\u69d7のような文字が 表示できません。??になってしまいます・・・。
\u69d7はsjisで表示できないんじゃね? utf-8にしたらどう
>>17 , 18
おお!ありがとう
知ってそうで知らなかった情報だ
:r! date などとやると改行した先に結果が貼付けられますが、 この改行を無くす事は出来ますか?
>>28 私の環境のせいか、上の行に挿入されてしまいました。
>>27 その手のコマンドは行単位なので、
実行したコマンドの出力に改行がなくても末尾に必ず改行が挿入される。
だからコマンド実行後にJするなりなんなりで調整しないとダメ。
>>30 なるほど。わかりました。
ありがとうございます。
32 :
名無しさん@お腹いっぱい。 :2008/02/08(金) 14:19:43
埼玉大学(笑)
くまのり!
Vimと直接関係ないんだけど、ちょっと相談に乗ってください。 gnu screenのescapeをどのキーに割り当てればいいのかわからないです。 bash + screen + vim7環境です。 screenのデフォルトescapeは^aだけど、bashの「先頭に戻る」、 vimの「数字インクリメント」とかぶるので駄目。 仕方なく^tにしてたけど、vimの「タグジャンプ後、元のファイルに戻る」に ぶつかってたのを、今日ctagsインストールして気づいた。 今のところ^uが有力候補なのですが、同様の環境の人がいたら、 何をescapeに割り当てているのか教えて欲しいです。
>>34 gnome-terminal 使いのタコなんだが、
telnet みたく CTRL-] じゃだめかいな?
>>35 ども。
そのキーはvimのタグジャンプなんです。(涙
^j とかはどうだろ。
自分は^z使ってるよ。 screen使ってればsuspendするより新しいshell立ち上げた方が便利だし どうしても必要な時は^zzで間に合う。
>>37-38 ども。
^jと^zを今日試してみます。
^j → 最高のホームポジションを見落としていた
^z → 「どうせサスペンドしない」確かにそうだ!この発想は出てこなかった
>>34 >screenのデフォルトescapeは^aだけど、bashの「先頭に戻る」、
こら! Vimmerなら何故~/.inputrcにset editing-mode viと書いてないんだ!
まあ冗談はさておき、Vim側のキーバインドなんていくらでも変えられるんだから、
デフォで割り当てられてる機能は気にせずに、使い易いと思ったものに割り当てればいいじゃない。
使用頻度低いのとか、使い辛そうなのは別のキーに割り当てなおせばいいんだし。
自分の場合は^Aそのままで使ってる。インクリメントほとんど使わないし。
・^J/^Kはjumplistの移動(デフォだと<C-o>/<C-i>)に割り当ててる。
・^]/^Tは今一使い辛いからtt/tj/tkとかに割り当ててる。
・^Zは:suspendはそれなりに使うのでそのままにしてる。
あと開いてそうなのと言えば^Qくらいかなぁ。
>>34 俺はほとんど使わない^Lだな。
もし連打してもただの再描画だから被害が少ないし、
何よりホームポジションにある。
^|とかどうよ
自分は^Aと^Zの間をウロウロしている。 ^Zは押しにくいし、^Aに定住しそう。
45 :
34 :2008/02/16(土) 01:49:40
>>40-44 ども。
結果、^Jjに落ち着きそうです。ホームポジションど真ん中で快適です。
^jはemacsでインデント付き改行だけど、使わないのでどうでもいいや。
>>40 マジレスですが、bashのviモード使ってる人って見たことないです。。。
>>41 bashで^Lしてからlsとかしません?日本語コメントがあって、1,000行以上
あるソースを見るとvimの表示ずれて^Lしません?俺だけ??
>>42 ^|って[CTRL + Shift + \]?ちょっと難しいです。
>>43 おいらも今日から真似します。
>>44 vimの^aは使わなくても我慢できるけど、
bashの^aが[^aa]なり[^a^a]なりになるのは我慢できないです。
^asudoとかよくやるんですけど。(弱
set -o vi は /etc/bashrc にぶちこんどけ!
ctrl+aで数字を+1できることを最近知ったのですが、 逆に−1するにはどうすればよいでしょうか?
CTRL-X
Ctrl-a ってどんな時に使うの? 使い道がさっぱりわからん。
キーボードマクロとかで使うな
オレの場合 nnoremap + <C-a> nnoremap - <C-x>
qa0yyp^aq10@a
EmacsのC-lと同じ動作はどうすればできますか?
画面を再描画のことかや?
カーソルを画面中心に持ってくるってことじゃね? たぶん、zz でいけると思う。
57 :
50 :2008/02/17(日) 12:01:29
キーボードマクロ+インクリメントは、 入れる値を変更したSQL文を大量生成したい時で、 スクリプト組む気力が無いときとか。
0x9f とか 077 で重宝するかな。 既存の数値を変更する場合は、今は、submatch() と printf() も使える。 たとえば、53 氏のマクロで、10行分の数字を入力した後。 現在行から10行の範囲に対して、3を足して16進数にする。 :.,.+9s/^\d\+/\=(printf("%#x", submatch(0)+3))/
60 :
名無しさん@お腹いっぱい。 :2008/02/18(月) 20:04:27
ファイルA.txtを開いている状態で、vnewしてB.txtを開く。 その状態でvim -d A.txt B.txtみたいなvim diff表示をしたいんだけど、 それって出来ますか?
:h diff 見てみればいいんじゃないかな
なんか良いな、この流れ。
C++でnamespace宣言の{でくくられたものは インデントを下げないようにしたいのだけど、そんな事できますかね?
>>64 function! GetCppIndent()
let prev_line = getline(getpos('.')[1] - 1)
let ns_indent = match(prev_line, 'namespace')
if 0 <= ns_indent
return ns_indent
endif
return cindent('.')
endfunction
こんなのを indentexpr に設定すれば良いかと。
>>64 ごめん。ちょっと修正。
function! GetCppIndent()
let curr_line = getpos('.')[1]
let prev_indx = 1
while match(getline(curr_line - prev_indx), '^[ \t]*$') == 0
let prev_indx = prev_indx + 1
endwhile
let prev_line = getline(curr_line - prev_indx)
let ns_indent = match(prev_line, 'namespace')
if 0 <= ns_indent
return ns_indent
endif
return cindent('.')
endfunction
長過ぎる。3行で。
69 :
名無しさん@お腹いっぱい。 :2008/02/23(土) 15:42:25
キーボードマクロって、vim終了させると消えてしまいますが、 消えないように設定ファイルに設定したりすることってできますでしょうか?
検索するときに漢字を含んだ正規表現を使った検索ってできないのでしょうか? やりたいのは、 /ほげ.*ふう みたいなことです。
>>69 「キーボードマクロ」がrecording(qxfoobarbazqとかで入力したやつ)のことなら、
入力内容はレジスタに保存されてて、オプション'viminfo'が適当に設定されていれば
レジスタの内容はVim終了時にviminfoというファイルに自動的に保存されるから、
次回起動時でも使えるよ。
:set viminfo?
として「<20」みたいな内容が含まれていれば保存されているはず。
「キーボードマクロ」がmap foo barとかのkey mappingのことをいってるのなら、
これは自分で設定ファイルを書かないと駄目だよ。書くファイルは
:echo $MYVIMRC
で表示されるファイルね。
>>70 普通にできるよ。
72 :
>>69 :2008/02/24(日) 15:28:16
>>71 viminfoにかんしては使えないようでした。FreeBSDのjvimではだめなのかもしれません。
漢字の検索もjvimだからなのか使えませんでしたorz
jvimってバージョン5なんだな。 てことは、そのころはまだ、日本語関連よろしくなかったんだな
74 :
71 :2008/02/24(日) 17:01:30
>>72 jvimだったのかよ! てっきりVimだとばかり思ってた。
昔のバージョンならともかく、今のバージョンなら普通にマルチバイト文字を扱えるんだから
この際Vimに乗り換えると言うことで。
>>72 japanese/jvim の事かな?これってバージョン2でしょ?
俺は japanese/jvim3-direct_canna を使ってるけど
>>70 のは出来てるよ
キーボードマクロはほとんど使ってないんでよく知らん。
map 系で代用出来ないか?
76 :
>>72 :2008/02/27(水) 00:17:40
insert モードと間違えて normal モードで日本語入力してしまうと, 動作がおかしくなるんですけど, Normal モードでの日本語入力を抑制する良い方法を知っている方いませんか?
環境を書いた方がいいと思う
79 :
77 :2008/02/28(木) 18:24:54
すみません FreeBSD 6.2-Release-p9 VIM 7.1.242 で, scim + Anhty 使って日本語入力してます.
おかしくなるってなに
>>79 デフォルトだとNormal modeでマルチバイト文字が入力されても無視されるだけだから無害だと思う。
個人的には自動でInsert modeに移行されると便利だから
ちょっとパッチ書いてみようかと思ったり思わなかったり。
82 :
71 :2008/02/28(木) 18:43:43
83 :
71 :2008/02/28(木) 18:45:38
>81 マルチバイト文字は無視されるんでしたか ちょっとこっちの環境が変な気もするので調べてみます ありがとうございます
vimはunix的メモ帳だからアクセサリでいいよ
vimかわいいよmiv
質問お願いします。 vimのファイルタイプの自動判別を追加するために vim documentationに示されていたAの方法を試したら、 自動判別はできるのですが、既存のファイルを開くたびに "mysrc/test.mine" [変換済] 86L, 1281C 1 /* 続けるにはENTERを押すかコマンドを入力してください と必ず最初に表示されてしまいます。これを回避する方法をご存知のかたいらっしゃいましたら教えてください。 vimのver6を使用しています。宜しくお願いします。
>>86 まずはどんな設定か晒すんだ。
その設定が原因でメッセージが表示されて
hit-enter-promptが出てるんだと思うよ。
あとヘルプの特定の箇所を示すなら
:help ftdetect
と書いた方が分かりやすいよ。
返信が遅れてしまいました。すいません。 設定についてですが、ファイルの自動判別を行うために、 ~/.vim/ftdetect/mine.vimというファイルを作成し、 内容を au BufRead,BufNewFile *.mine set filetype=mine としました。設定は以上です。 この設定を行う前にmineファイルsyntaxの ~/.vim/syntax/mine.vimも追加したのですが、もしかするとこの操作が影響しているのでしょうか?
GVim Portable について質問させてください。 Windows の話題ですみません。 ビジュアル モードに入ったときに、 選択範囲が反転しないのですが これを反転するよう変更する方法をご存知ないでしょうか?
>>90 誘導ありがとうございます。
向こうに行ってきます。
質問お願いします! 前までVim6.3を使っていまして、 この度Vim7.1をインストールして使ってみているんですが コマンドをTABで補完出来ません(^Iとかでて)。 なにか設定がいるんでしょうか?
>>92 set wildchar=<Tab>
この辺はバージョン間で違いはないだろうから各自の設定次第だと思うけど。
>>93 素早い対応ありがとうございます。
無事に解決したみたいです!
まだ体質にマルチウィンドウがこびりついてはいますが
徐々に慣れていければとおもってはいます。
本当にありがとうございました!
95 :
名無しさん@お腹いっぱい。 :2008/03/07(金) 09:13:21
vim7の矩形処理(Ctrl-v)で、まとめて文字を挿入したいのですが、 大文字のIを押しても挿入できないのは、何が原因なのでしょうか? ちなみに、通常モードだと、Iは効きます。
shellからvimコマンドで、複数ファイルをウインドウ分割状態で開けますか? ・自分が知ってるやり方 (shell)vi a.txt (vim):sp b.txt →a.txtとb.txtがウインドウ分割で開いた! ・こうしたいというイメージ (shell)vi -split a.txt b.txt →a.txtとb.txtがウインドウ分割で開いた!
>>96 vi -o2 a.txt b.txt
で縦に並ぶみたいです。
横は知りません。
(-hを参照してやってみました。)
-hで-oのすぐ下に -O[N] -oと同じだが垂直分割 というのがあるよ。
99 :
97 :2008/03/07(金) 11:14:41
ぶ、藪蛇・・・
>>95 うちのVim7は出来ますねぇ・・・
何で動かないんでしょ
101 :
96 :2008/03/11(火) 22:18:51
>>97-99 以下で出来ました!ありがとう。
$ vim-o *.dat
なんか廃れてきてますね・・・ Vim7の起動が遅いんですが何か問題があるんでしょうか? 6と比べると格段に遅い・・・
余分にプラグイン入れてるとか :scriptnames で起動時から読み込んだ全ファイルみて、 いらなさそうなファイルを削るとか
>>102 素のVimの起動時間はあきれるくらい速いよ。
$ time vim -u NONE -U NONE --noplugin -c 'quit'
$ time vim -c 'quit'
で比較してみるといいよ。
起動時間が遅くなる原因は基本的にvimrcと使ってるプラグインによる。
>>103 比べてみると相当ちがう・・・
6のプラグインを参考に7のを選別してみます。
>>104 NONEが
0.001u 0.000s 0:00.00 0.0% 0+0k 0+0io 0pf+0w
元が(たぶん)
0.002u 0.000s 0:00.00 0.0% 0+0k 0+0io 0pf+0w
でした。
・・・ところで起動するプラグインってどうやって編集するんですか?
検索の方法が悪く・・・
開くファイルの拡張子ごとにvimの挙動を指定するにはどうしたらよいでしょうか。 たとえば、foo.htmlのときはset nosmartindent、 bar.jsのときはset smartindentのようにしたいです。
>>106 簡単にすますならautocmd
:autocmd BufNewFile,BufRead *.html setlocal nosmartindent
:he autocmd
起動するプラグインを削る方法で一番簡単なのは、たぶん、単純に削除しちゃうこと。 でも、今何読み込んでるのか見てみたら、デフォの状態だと削れるの少ないなぁ
>>107 ありがとうございます。ドンピシャです!
110 :
名無しさん@お腹いっぱい。 :2008/03/20(木) 16:26:42
挿入モードで現在のカーソル位置を 1行上はCtrl+k 1行下はCtrl+j だと思いますが、 同じように左側や右側へ移動する方法があったら教えてください。
挿入モードで<Ctrl-J>て改行だと思ってたけど、 そういやカーソル移動するとかいうのもどっかでみたな どっちにしろ標準機能でもそうでなくても imapするといい 普通直前の文字削除にあてられてる<C-H>にあてるなら imap <silent> <C-H> <C-O>h 他には imap <silent> <C-J> <C-O>j imap <silent> <C-K> <C-O>k imap <silent> <C-L> <C-O>l どっちにしろ挿入モードで一つだけコマンドが入れられる<C-O>を調べるといい :help i_^o
inoremap <C-H> <Left> ・・・ 普通はこうする
113 :
110 :2008/03/20(木) 18:19:10
>>111 ありがとうございます。無事設定できました。
ちなみ
>1行上はCtrl+k
>1行下はCtrl+j
は間違えちゃいました。本当は
1行上はCtrl+gのあとにk
1行下はCtrl+gのあとにj
でした。
114 :
111 :2008/03/20(木) 18:25:09
>>111 は<C-O>の描画で荒れるので取り消しで
>>112 にしたほうがいい
カーソルなんて思いもよらなかったぜ
115 :
名無しさん@お腹いっぱい。 :2008/03/21(金) 01:15:42
vimで、ctrl+vで矩形選択した後、I{文字列}[ESC] とやると、矩形選択した列のところに入力した文字列をまとめて挿入できますが、 同じことをjvimでやると、うまくできません。 矩形選択まではうまくいくのですが、その後がうまくいかないのですが、 なぜでしょうか?
たぶん、jvimがバージョン5ベースで、 vimにその機能が入ったのが、5.4だからじゃないか?(だよね?)
117 :
>>115 :2008/03/21(金) 02:42:25
本家(g)vimのIM周りがもう少しマシになれば jvimも成仏できるんだろうけどねー
OSX のターミナルで Vim7 を使っています。 挿入モードで日本語を入力して C-[ でノーマルモードに戻す際に ことえりを off にする方法ってありますか? OS 側でキーマップしないと駄目ですかねぇ。
inoremap <silent> <C-[> <Esc>:set iminsert=0<CR> とかどう?
vim (笑)
>>119 にちょっと便乗の質問です。
日本語入力時に3行下にカーソルを移動するとき、
IMEオフ→Esc→jjj→i→IMEオン→日本語入力
てな流れでやってるのですが、
IMEをオフしないでうまいこと使う方法ってありますか?
>>123 ctrl+o -> 3j
じゃだめか?
insertモードで普通にカーソルキー使えるんじゃない?
126 :
123 :2008/03/23(日) 21:57:14
実はTeraTermからFreeBSDのVim7.1を使ってます。
情報後出しでほんとすんません。
>>124-125 はIMEの入力窓が出てしまいダメです。
でもC-oは便利ですね。知りませんでした。
cinoptionsの bN N が 0 でなければVimは最後の"break"を基準にして配置を行う。 って効かなくない?b1にしてもデフォルトと全然変わらないんだけど。
= でフォーマットだときく。 cinkeys を設定すると入力中でもきくようになる :set cinkeys+=; とか :set cinkeys+==break
>>128 本当だ。ありがとう。
これでb0スタイルからb1へ移行できるよ。
vim --version の -clipboard を +clipboard にする configure オプションってなんですか?
--enable-gui 的なものがあればとりあえず付くんじゃないか? src/features.h の FEAT_CLIPBOARD の定義のとこに条件が書いてある。
mapをいじって、例えば<C-A>と<C-B>を交換したいとき map <C-A> <C-B> map <C-B> <C-A> のように記述しても、予想していた動作になるんでしょうか? それとも途中で<C-A>は<C-B>に上書きされて、 <C-B>は<C-B>のままになってしまうんでしょうか?
書いてる途中に気が付いて事故解決しました。 わかりやすいノーマルモード時の <C-A> と <C-X> を変えてやったら、 再帰マッピングですといわれて動作しなかったので、 nnoremap <C-A> <C-X> nnoremap <C-X> <C-A> としたら、AとBを交換できるような動作を実現できました。 すんません
>>132 :map等の再展開されるバージョンでそういうことをすると、
例えば<C-a>を押したときに<C-a>→<C-b>→<C-a>→<C-b>→……
と無限に再展開されてしまう。これは<C-b>を押した場合でも同じ。
キーの入れ替えをしたいなら:noremap等の再展開されないバージョンを使う。
# 一部例外はあるけど、その辺はhelp参照。
このケースに限らず、特に理由がない限りは:noremap等を使う方がいいよ。
:map等の再展開されるバージョンは副作用が多いから。
:map等を使うべきケースは
プラグインが提供してる<Plug>FooBar等にキーを割り当てる場合か、
あるキーを他のキーと同じ動作にしたい場合ぐらい。
ぁゃしぃ
137 :
名無しさん@お腹いっぱい。 :2008/04/09(水) 12:03:37
ちょいと質問です。 Vim7(7.0.237 centos5)でソースコードのHTML保存をTOhtml使って試してるんですが、:colorscheme desert なら色分けされて保存されるのに :colorscheme desert256 だと色が付きません。 どこが悪いんですかね。.vimrc? 同じ事をkaoriyaさんのgvimでやったら上手くできたんでコマンドが間違えてるってことはなさそう。
139 :
名無しさん@お腹いっぱい。 :2008/04/10(木) 20:20:49
インサートモードでスペースを押すと:echo "Hello"を実行して インサートモードに戻るmapを書きたいのですがうまくいきません imap <space> <C-c> :echo "Hello" <CR> <insert> これだとノーマルモードでスペースを押したときみたいな挙動でした
>>139 :echo "Hello" する関数(戻り値は"")を作成して
inoremap <expr> か inoremap <C-r>= で呼ぶ
141 :
名無しさん@お腹いっぱい。 :2008/04/10(木) 21:18:28
あるディレクトリ以下では新規作成時のデフォルト文字コードを変更みたいな事を実現するにはどうすればいいでしょうか? ほかにもexpandtabにしたりしなかったりとかがやりたいです。 ご存じの方がいらっしゃいましたらご教示ください。
exrc じゃなかったかな。 h exrc
こんなのか function! Fn1() setlocal encoding=utf-8 setlocal expandtab endfunction augroup SetDirectoryOption autocmd! autocmd BufAdd あるでぃれくとり/* call Fn1() augroup END モードラインを新規ファイル作成時に自動的に記述するか、 自動的に用意されたものを使うように skeleton お勧め help skeleton
C/C++でプログラミング中に:makeで出たエラーの箇所に飛んでくれるのはいいんですけど /usr/include以下のファイルには飛ばないみたいな挙動にすることはできませんか?
話題に直接関係ないが、 /usr/includeで出るエラーってどんなだろう。
STLとかつかってたら普通にでると思う。
>>146 インクルード順序をしくってたりdefineミスったりしてもふつーに出るぞ。
>>145 autocmd QuickFixCmdPost
して、コンパイル後にgetqflist()でエラーリスト取得して
いらないのを省くとかでどうか
検索ジャンプを戻っていくコマンドで、 ``は一個前に戻りますが、2個前、3個前…と戻るコマンドはあるでしょうか?
2とか3を前につけるんじゃダメ???
↑ すまん誤爆。 できない。 普通に;とか+じゃダメですか、そうですか...。
>>150 戻る: <C-o>
進む: <C-i>
完全バイブルを読んでいる初心者の質問です。 ノーマルモードでEnterを押すとなぜかMRUが動いて履歴を表示します。 マッピングした覚えがないので気持ち悪いです。 どうせならノーマルモードでもEnterで改行できるようにしたいと考えました。 モードレス・エディタのような動きです。 map <CR> i<CR><ESC> →動きません(MRUが作動)。当たり前か...。 map <F2> i<CR><ESC> →希望通りに動きます。 <CR>にマップをあてる方法がありましたら教えてください。 何か定番のような書き方があるのでしょうか。
>>154 mapのところをnnoremapにするといい
>>155 おお、ありがとうございます。
ノーマルモードでリマップなしにするのですね。
>>154 の原因はMRU起動のマッピングだったようで、
マップを外したところEnterが希望通りに動くようになりました。
158>> ありがとうございます! バックスペースの使い方がよく分かっていなかったようです。 助かりました。
\zeって何?
162 :
160 :2008/04/23(水) 14:24:04
163 :
161 :2008/04/23(水) 14:34:17
あ、スレが伸びてるw ありがとうございます。
10.5.2 Leopard上でvim-cocoa 7.1.293を使っています。 構文ハイライトで、colorschemeファイルにてgui=italicと指定された部分が 斜体表示されず、代わりに下線付きで表示されてしまいます。 gui=boldの部分は、正しくボールド体で表示されます。 これを修正するには、どうすればよいのでしょうか。
Unix のコンソールでC言語のソースファイルを編集していて、コメントが navy で見ずらなかったんだけど 標準環境で :colorscheme evening とすればよかったんだね
168 :
名無しさん@お腹いっぱい。 :2008/04/26(土) 17:20:37
windows gvim7.1を使い始めました。 ファイルをディレクトリを指定して保存したいのですが、 コマンドがわかりません。 すみませんご存知の方。教えてください。
>>168 そんなことで聞いているんなら
vimは、使わないほうがいいよ
>>168 :w path/to/filename.ext
メニューにそれっぽいものがありそうな気もするけど。
おまいら優しすぎ
>>171 おお。ありがとうございました!!
好きで馬鹿やっているわけではないんですが、あなたのような
頭がよくて優しい方のおかげで生きていられるんだなって思います。
馬鹿とか以前に取扱説明書ぐらい読もうね
マニュアルもチュートリアルも読まないわ板違いだわこれはひどいな
はい。すんません。去ります。
179 :
名無しさん@お腹いっぱい。 :2008/04/26(土) 18:27:17
久しぶりにvimの話題が読めると思ったのになぁ...
180 :
名無しさん@お腹いっぱい。 :2008/04/26(土) 18:41:58
すれ違いかもしれませんが、vim について質問させてください。 ユーザー定義関数内で、ヤンクされた文字列を変数として扱うにはどのようにすればよいでしょうか。 function foo() let bar = '最後にヤンクされた文字列' ... endfunction のように引数無しで foo を呼び出し、最後にヤンクされた文字列を対象とした処理を行いたいです。 ご教授ください。お願いします。
>>179 そんなあなたに質問させて頂きます
vi の機能だったか、vim の機能だったか、忘れたけど
USA と書くと United States of America と出る機能ってどこにあって、どうやって使うの?
あと Vim で文章を書いていて、現在の日時秒数を下の形式で即座に表記する方法は、ありませんか?
2008年04月26日(土) 18時51分14秒
20080426_185120
まあ、自分で調べるけどさ
自分にとって優先順位の低い事柄なので、後回しにしているんだけど
>>181 日時は適当にマップしとけばいいんじゃないの?
inoremap <Leader>time <C-R>=strftime('%Y%m%d_%H%M%S')<CR>
183 :
名無しさん@お腹いっぱい。 :2008/04/26(土) 19:43:08
ご指名キタコレ 略語 :h abbreviate 現在日時挿入 autodate.vim
>>182 > inoremap <Leader>time <C-R>=strftime('%Y%m%d_%H%M%S')<CR>
マップという概念を理解していません><
でも、レスのヒントをきっかけにがんばってみます
>>183 > :h abbreviate
まだ手を出すには、早かったみたいです
> 現在日時挿入
> autodate.vim
locate したら、Vim6.4.9_1 標準環境にはなかった・・・
管理がめんどいので、極力カスタマイズしたくないんですが、
これは、しょうがないんですね
182さん、183さん、レス、ありがとうございました
>>180 let bar = @"
でいけるんじゃないか?
186 :
名無しさん@お腹いっぱい。 :2008/04/27(日) 09:01:50
emacs-w3m ならぬ vim-w3m は無いの?
188 :
名無しさん@お腹いっぱい。 :2008/04/27(日) 12:37:47
emacsにはなんでもあるんだな、うらやましい。 vimだとchaliceならあるけど...。
vimはエディタだからな
ブラウザはあったような気がする
191 :
名無しさん@お腹いっぱい。 :2008/04/27(日) 23:28:10
Vim7をLinuxにインストールしたのですが ターミナルからVimを起動し、コマンドモード(exモード?)でコマンド履歴を見ようと Ctrl+f をしても ^F と表示されてしまいます。。(gVim7の場合はきちんと表示されます。) どうすれば解決するでしょう??
192 :
名無しさん@お腹いっぱい。 :2008/04/28(月) 00:11:16
>>191 :history でコマンド履歴が出力されるかどうか試してみてはいかがでしょうか?
194 :
191 :2008/04/28(月) 10:07:30
>>192 ,193
ありがとうございます。
:historyコマンドが効かなかい事が発覚したので
パッケージ管理ソフトでVim-enhancedってのをインスコしたら解決しました。助かりました!
ちなみに鳥はPCLinuxOSでした。
195 :
165 :2008/04/29(火) 00:01:46
>>166 情報ありがとうございます。Mac専用サイトの方で聞いてみます。
vim file://localhost/home/myhome/my.txt をやると、絶対パスの /home/myhome/my.txt でなく、相対パスの ./home/myhome/my.txt を見に行ってしまうんだが、こういうもんなの?
>>196 /が1個足りないんじゃ? file:///〜 ってやってみたら?
localhost がディレクトリとして解釈されてしまい、絶対パスの /localhost/home/myhome/my.txt を見に行ってしまう。 ホスト名を入れちゃいけないのだろうか。
「file」なんだからlocalのファイルシステムを見るに決まってるやん。
いや、\\host\directory 形式なネットワークで困るんじゃなかったかな。 ああ、rfc1738にも file://<host>/<path> と書いてある。
file://<anyremotehost>/<path> 形式を使う事無いんだからrfc1738をぶっちぎってるけど意味無いからいいんじゃね
netrwはfile://<path> or file://localhost/<path>に対応 <path>部分は :edit <path> として使われる file:///dir/file => /dir/file file://c:/dir/file => c:/dir/file (ちなみにwinでも/dir/fileでいける) file://file => ./file file://localhost//dir/file => /dir/file file://localhost/dir/file => ./dir/file windowsではfile://localhost/はなぜか無効になってる。
>>201 >使う事無いんだから
すまん。仰る意味が解らない。
>>202 >file://localhost/dir/file => ./dir/file
s/localhost\///した感じなのかな?
s/localhost//で、
file://localhost/dir/file => /dir/file
だったら、戸惑わなかったと思う。
でも、 こういうもんだと解りました。有難う。
204 :
名無しさん@お腹いっぱい。 :2008/04/29(火) 23:06:09
すみません、ご存知の方いらっしいましたら知恵を貸してください。 単語帳や図書カードのように一定サイズの用紙にプリントアウトをして カードを作成したいのですが、 lhslhslhslhslhs rhsrhsrhsrhsrhs lhslhslhslhslhs rhsrhsrhsrhsrhs lhslhslhslhslhs rhsrhsrhsrhsrhs のように記述領域を左右に分けたいのです。 左側を入力した後にスペースやタブで狭間を確保するぐらいしか考えつかないのですが、 このような書式についてVimのテンプレートやマクロはあるのでしょうか? HTMLでCSS埋め込み型にすればいいのかな...。
>>203 netrwの実装がそうなってるってだけでそういうもんかどうかは知らないよ
undocumentedだし
>>204 俺なら、縦にずらーと書いてから、右側の列の分を矩形選択でカット、右端でペースト→整形
もし、一覧のようなデータがあるなら、Excelに張ってからコピペのが早いかも。
207 :
名無しさん@お腹いっぱい。 :2008/04/30(水) 03:34:42
>>206 行頭削除ぐらいにしか使っていない矩形モードを忘れてました...。
ありがとうございます。
VIM7について質問ですが、 VIM6のときはファイルをドラッグドロップして開くとカレントディレクトリが自動的に移動していたと思うのですが VIM7ではカレントディレクトリが移動しないためすぐにgrepできず不便です。 この点を解消するコマンドはありますか。 shiftを押しながらドラッグドロップすれば変更してくれるのですが・・。
209 :
名無しさん@お腹いっぱい。 :2008/05/02(金) 00:32:43
>>209 上手くいきました。
ありがとうございました。
:set autochdir ではダメってこと?
212 :
名無しさん@お腹いっぱい。 :2008/05/02(金) 02:03:27
>>211 Vi mが |+netbeans_intg| または |+sun_workshop| 機能付きでコンパイルされたときのみ有効
Vimを起動するときにプラグイン関係のエラーがターミナルに出力されるんだけど 一瞬で消えてしまって多分シューマッハでも読めません どうすればいいでしょうか
シューマッハより速くなればいいじゃん
シューマッハ舐めすぎ
Align.vimを:so %でインストールしたのに vim7.0がAlignコマンドを認識してない。 こういう時ってどうすればいいでしょう??
>>213 起動した後で(メッセージが流れた後)、
:messages
と実行すると、わかるかもしれない。
>>216 うまく動かないVimBallが入っているバージョンがあったよ。
ちゃんと入ってないんじゃない?
218 :
名無しさん@お腹いっぱい。 :2008/05/02(金) 22:19:32
>>213 原始的だけど、ワシはスクリーンショットで頑張ったことあるよ。
うまく写ったときの☆カ・イ・カ・ン☆が忘れられない。
219 :
213 :2008/05/02(金) 22:30:34
今回は一単語ずつ気合で読み取りました
>>217 ,218
次回は試してみたいと思います。ありがとうございました
221 :
213 :2008/05/02(金) 22:49:38
>>220 便利なものがあるんですね。勉強になりました
222 :
216 :2008/05/03(土) 11:11:29
>>217 2006年リリースのバージョンで動作しましたw
ありがとうございます!
Linux版にvimスレが無かったのでお願いします。
置換について教えてください
下記のファイルは/var/log/messagesの抜粋なのですが、May 5から始まる行、以外すべて削除するにはどうしたらいいですか?
置換前
May 4 22:50:52 localhost avahi-daemon[2132]: Leaving mDNS multicast group on interface eth0.IPv4 with address 192.168.0.2.
May 4 22:50:53 localhost acpid: exiting
May 4 22:50:56 localhost kernel: Kernel logging (proc) stopped.
May 4 22:50:56 localhost kernel: Kernel log daemon terminating.
May 4 22:50:57 localhost rsyslogd: [origin software="rsyslogd" swVersion="2.0.2" x-pid="1962" x-info="
http://www.rsyslog.com "] exiting on signal 15.
May 5 06:43:52 localhost rsyslogd: [origin software="rsyslogd" swVersion="2.0.2" x-pid="1961" x-info="
http://www.rsyslog.com "][x-configInfo udpReception="No" udpPort="514" tcpReception="No" tcpPort="0"] restart
置換後
May 5 06:43:52 localhost rsyslogd: [origin software="rsyslogd" swVersion="2.0.2" x-pid="1961" x-info="
http://www.rsyslog.com "][x-configInfo udpReception="No" udpPort="514" tcpReception="No" tcpPort="0"] restart
以前どこかのスレで見た気がするけど :v/^May 5/d
>>224 ていうか
:v/^May 5/d
では思った結果出ない・・・・orz
置き換えではないけど :%!grep ^May 5
>>187 前スレだかどこかでもあったけど、
:r!w3m www.google.co.jp でいいんじゃね。
229 :
187 :2008/05/05(月) 22:44:11
現在編集しているファイルと裏バッファのdiffとってdiff編集モードに 入るのってどうしたらいい
232 :
名無しさん@お腹いっぱい。 :2008/05/05(月) 23:49:44
>>231 俺のかすかな記憶によると
それマニュアルに載ってた気がする
つか、blogやwikiに書いたりするのはw3mでviが普通だと思っているオレがいる。
>>231 :diffthis
Ctrl-6
:diffthis
とか…?
逆に考えるんだ エディタにブラウザを乗せるんじゃない ブラウザにエディタを乗せると考えるんだ
>>231 :diffsplit #
:vertical diffsplit #
で横分割
>>223 :g!/^May 5/ d
でいいんじゃないの?
238 :
名無しさん@お腹いっぱい。 :2008/05/06(火) 12:30:33
>>230 >普通に w3m
http://www.google.co.jp でhjklなあれなんだが。
そうだね。hjklを云々した例でなかったが、その意味でもわざわざ less を使った迂遠な方法で w3m を使う人は少ないでしょうね。
ちょっとレスの意味を掴みかねてます。
>>235 そうなんだよね。でも vim のバッファが w3m (w3mのstdoutでなく)になると便利だろうと思うこともあるもので。
#vimperator は話題とは別にちょっと使い易そうですね。
最近、Kaoriya Windows版vim6.4から7.1.278に変えたのだがバグっぽい気になる点が。 foldlevel=0の状態で {{{ カーソルはこのfoldの中でも外でも良い }}} こんな感じでfoldを開いた状態にする。 # この例はfdm=marker ここで :e してファイルを再読み込みすると、foldが勝手に閉じられてしまう。 vim6.4では閉じなかった。 undoバッファを消すために、しばしば :e を使うので気になる。 また、fdm=manualの場合、zcで手動で作ったfoldが :e で忘れられてしまうみたいだ。 :eの後に先程zcで閉じた所に移動して再度zcでfoldを閉じようとしても E490:折畳みがありません と怒られる。 この点もvim6.4なら問題なし。 これってバグじゃないかねぇ??
241 :
名無しさん@お腹いっぱい。 :2008/05/08(木) 06:54:30
WindowsでKaoriya版を愛用しているのですが、これをLinuxで動かすには どのようにすればいいのでしょうか。 Kaoriyaさんのサイトでは、 「ファイルにはUNIXでのコンパイルに利用可能なパッチも含まれています。」 とありますが、私はプログラマーではありませんので、コンパイルやパッチということが よく分からないのです。 Windows版をダウンロードしただけでは使えないんだろうな、ぐらいは分かるのですが...。 分かりやすい手順などありましたら教えてください。 よろしくお願いします。
243 :
名無しさん@お腹いっぱい。 :2008/05/08(木) 10:38:13
>>242 おお、ありがとうございます!
やっぱりプログラマー向けなんですかね。
コンパイルやら差分やらを覚える時間がないので今回は
.vimrcとプラグインを引越しして我慢することにします。
>>240 とりあえず foldlevel=20 にしとけばいいとおもうよ
>>243 それで不満が出たらそのときにまた考えればいいと思うよ
246 :
名無しさん@お腹いっぱい。 :2008/05/08(木) 18:47:19
>>245 はい。
文字コードの自動判別をKaoriya版のスマートさに頼っていたので。
いい機会ですので、自分で把握できる構成のVimを作っていこうと思います。
247 :
240 :2008/05/09(金) 01:07:46
>>244 > とりあえず foldlevel=20 にしとけばいいとおもうよ
まぁこれも1つの手なんだけど、
これだと開きたくない別の場所のfoldまで開いちゃうよ…
vimたのしいお 質問なんだけど、escキーじゃなくて C-[ とか他のキーにエイリアスしてる人って多いのかな?それとも少数? あと、insertモードでカーソル移動するときって、矢印キー使う? それとも移動するときは必ずコマンドモードに戻る?
249 :
名無しさん@お腹いっぱい。 :2008/05/11(日) 22:27:09
>>248 inoremap jj <Esc>
inoremap <C-j> <Esc>:set iminsert=0<CR>
下はIMEオンの時用。
移動は C-o, C-g j, C-g k などデフォルトのを使いつつ、リマップもしてる。
>>249 正直,Unix/Linuxにデフォで入ってる設定変更用の面倒なエディタがviだろと思っていたが,
最近まじめに調べて使うようになったら,その考えが吹っ飛んだ。
でもinsertモードがまだ多いへたれです。
vim使うようになってからシェルでの生活が増えたなぁ。
252 :
名無しさん@お腹いっぱい。 :2008/05/11(日) 23:37:18
>>251 ほんの少しの基本だけ身につければすぐ楽になる。
最初はどうしたら効率的な操作ができるのか、パズルを解くような
感じで楽しかった。
先人達が用意してくれたプラグインなどの資産がたんまりあるから
おいしいよw
外人ってどんな意味でZENって使ってるの?
vi が zen なら ED なんか THE TRUE PATH TO NIRVANA! だぜ。
vi〜はマジでクソだな emacsなら、nanoなら30secondsで終わったものを3minくらいかかりやがった コアな操作もタイプミス許しません的なゆるゆるなキーバインドだれが考えたんだよ ありとあやるるシステムから消え去ってください一般人は本当に迷惑してます あーvi〜って過去の遺産ってやつだっけ?消えゆく運命ならそれでいいけど 布教しようとか思わないでおいてね、さすがの俺もキレたわ なにがユニークな学習曲線だヴぉけ
お前Vim初めてか?力抜けよ。
258 :
名無しさん@お腹いっぱい。 :2008/05/16(金) 21:35:56
俺は初めて彼女とMMXした。 「もうそろそろiiyama? 君のI/ODATAを確かめたいんだ。XT」 MITSUMIあうと、彼女のMECはALBATRONとしていた。 緊張した俺は焦り彼女のソケット478をAOpenしようとした。 「ちょ、ちょっとRADEON!何をSis」もう俺は既にエレコム。 Sound Blasterのホックを外すとはちきれそうなPioneerがBarracuda でもBIOSTARは意外と玄人志向だった。 「恥ずかしいわ。あまりミネベア・・・」 SCSIをTORICAるとKEIANをSOLTEKした痕がアルファデータ。 あそこはSUPERMICROだった。OMEGAドライバも少し鼻についた。 しかし、彼女のCREATIVEを刺激しつつ俺のセレロンを 彼女のSerial-ATAからASUSに這わせると、「FireWire〜ン」 「もう、ATI」「COREGA欲しいんだろ?」「早くリテール」 俺は激しくTSUKUMO。「インテルはいってるっ!IEEE!1394!」 「あぁ・・・もうDell!」
かわいそうに、お前の彼女
261 :
名無しさん@お腹いっぱい。 :2008/05/16(金) 23:55:37
ゆとりジェネレーションの頭の悪さにコーヒー噴いたwww
なにかと思ったら、ed=勃起障害 といいたいのか?w
>>262 素で言っているようなので昨日今日viを知ったレベルなんだろうな・・・
unix/linux自体、最近知ったってくちだろ
俺も3年くらい前まで.
>>256 みたいなこと言ってたんだけど、
今ではVimしか使ってねぇ。
>>256 基本操作も良く覚えてない挙句
タイプミスしまくって30秒で終わる作業に
3分もかけてしまった可哀相な指インポ
Vimの操作さえできないほどの間抜けだと吐露する
>>256 ワロス
しかし漏れも、Vimに初めて触れたときは
>>256 と同じことを考えた
gvimに触れ、.*vimrcを自分で書くようになってから、考えが大きく変わった
主要OSのいずれでも動き、かつ、それぞれのOSのフレーバーに合わせた拡張がなされているところがVimの好きなところだ
叩きすぎもきもい
lessとかあるからviだけの作法ってわけでもないよね 覚えておいて損はしないと思うけど
俺は今でもCAPS LOCK入っただけで大混乱おこすけどなw プレーンなテキストエディタならすぐわかるけど、vimの場合、動きが変わっちゃうからさ
昔はお情けで caps<->ctrl 入れ替えだけで capslock は生かしておいたけど、今は完全に潰してるな。
>>272 同じ同じ。capsとctrl両方ともctrlにして全角半角はescにしたわ。
escって^[とキーボードの端同士で対になってるから右手左手で使い分け
出来るようになってくると格段に快適さが増すね。
あとはIMEのon/offは^^だな。
あんまりカスタマイズしたくはないんだが。
>>274 > 出来るようになってくると格段に快適さが増すね。
同意
> あとはIMEのon/offは^^だな。
おぉ!その手があったか。^'から乗り換えようかと思ったが
一部環境で使ってるKVMスイッチのホットキーが^^なんだよなぁ…
>>275 残念なことにwinのimeだと何故か^^に割り当てられないのねorz
何か工夫すれば出来そうな気もするけどね。
IMEは右上隅の ^\ や ^] なんかもリズム良く押せそうでいいと思うな。
つmayu
おまえら機嫌良さそうだな^^
スロで8万すったお^^
コマンドモードにしてるのを忘れてて他のアプリで 選択してる文字列を中ボタンで貼り付けたとき Emacsに乗り換えようかなと思う時もある。
InsertモードかCommandモードかで 中ボタンペーストの挿入位置が違うんだよね。
IMEon/offは<C-Space>でEscは両手使って^[だなぁ
Emacsも使うからそれは駄目やがな でもモディファイアの理想はkinesisの足パッド使いたいね 足にももっと仕事を与えてやるべき
IMEのON/OFFはkinput以来ずっと<S-Space> ただしスペースの両隣の無変換と前候補をShiftにしているのでそれほどの不自由はない
287 :
名無しさん@お腹いっぱい。 :2008/05/20(火) 00:45:27
質問です。 hoge/ Makefile src/ hoge.c include/ hoge.h というような階層構造で、カレントディレクトリがhoge/src、開いているファイルがhoge.cのとき、 :makeしてもhoge/Makefileを見てくれないことに困っています。 カレントディレクトリをhogeにするようなコマンドは無いのでしょうか?
普通に cd とか lcd して下さい。
289 :
名無しさん@お腹いっぱい。 :2008/05/20(火) 00:57:25
ありがとうございます!! まさかcd使えるとは……。:!cdとかやってカレントディレクトリ変わらないって思ってました。 本当にありがとうございました!!
291 :
180 :2008/05/20(火) 02:59:23
>>182 やっと構文の意味を理解しました
回答、感謝します
すいません 改行をけすのはどうすればよいでしょう? バックスペースやxで消せる設定があったと思うんですが
293 :
名無しさん@お腹いっぱい。 :2008/05/20(火) 08:40:21
よくわかんないけど、これのことかな? " バックスペースでインデントや改行を削除できるようにする set backspace=2 複数行を1行にまとめたいときは、"J"を使ってるけど。
大文字の J じゃだめかい?
基本的なことかもしれませんが 行頭に移動 カーソルいちから行頭を削除 uで戻りすぎたときに戻りを戻す 彼女を作る が分かりません 良かったら教えてください
0 d0 Ctrl+R :w 彼女
:make 彼女 にした方がよさそうな。他は全面同意
ありがとうございます おかげさまで全部できました!
ある文字列の中からパターンにマッチする複数の文字列を リストとして受け取りたいときてどうしたらいい?
不本意なレスだろうけど。 それを unix で実現する場合、expr ${MOJIRETSU} : '.*\(PATTERN\).*' などとやる人の方が多いんじゃないかな。(エディタでなく) 或いはエディタ上でシェル・スクリプトを実行し、結果を受け取るとか。
he matchlist
おれは:s///か、:g//で思い切ってファイルを編集しちゃうよ。 で、リストを逃がしたら、あんどぅー
>>299 返す関数はない
let rs=[]
call substitute(走査対象文字列,探したいパターン,'\=add(rs,submatch(0))','g')
でrsにマッチしたものが全て入る
ちなみにパターン内で \( \) を使えばそれがsubmatch(1)になる
>>302 ファイル全体なら :%s/// と % がいらんか?
305 :
名無しさん@お腹いっぱい。 :2008/05/29(木) 14:38:34
シンタックスハイライトで、C風の(ただしネストを認識する)コメントを syn region xComment start="/\*" end="\*/" contains=xComment のように定義したところ /*/* コメント */*/ のように、コメントの終了が連続していると認識せず、 /*/* コメント */ */ のように間隔がないとうまく終了を認識できないようです。 何かまずいのでしょうか?
プラグインで if (aaa = bbb) となっているのを if ( aaa = bbb ) のように()の両端にスペースを入れてくれるのがあったと思うんですが 知ってる人いませんか??
>>305 :h syn-keepend
デフォルトでextendな動作だからうしろの */* でさらにネストが深くなってる。
rails.vim 使ってる方。 autoload が追加になってから vim 起動時に RailsStatusLine がねーってエラーが 出るようになったんですが、これどうすれば良いですかね?
310 :
306 :2008/06/04(水) 15:42:34
>>307 キター!ありがとうございます!
>307には明日良い事が起きる
次のウィンドウバッファーへ移動するときの <C-W><C-W> をmapに割り当てたいのですが、 以下のようにやっても反応がありません。 どこがまずいのでしょうか? --vimrc-- map w <C-W><C-W><CR> wと押しても次のバッファに移動してくれません。
<cr> が余計
>>311 そのファイルどこに保存した?
Vimで:echo $MYVIMRCとやって表示されるファイルに保存してあって
なおかつVimを再起動して反映されないようだったらお手上げだな。
>>311 map w <C-w><C-w>
じゃないかな。
316 :
315 :2008/06/10(火) 00:04:43
ごめんなさい、関係なかった。
>>311 map w :wincmd w<CR>
この度、vim6系からvim7.1にバージョンアップしました。 が、今までは前回編集していたファイルを再度開いた際、 カーソルのあった行に自動でカーソルが移動していたんですが、 バージョンアップしてからというもの常に先頭行にカーソルが移動します。 .viminfoにはマーク位置等書き込まれているのでおかしいなと思うんですが…。
319 :
318 :2008/06/11(水) 17:43:02
vim6のmacros/vimrcを見て解決しました…。
あ それどうすればいいのか教えてほしかったり
$VIMRUNTIME/vimrc_example.vim にコードが書いてあるんで、 source するなり.vimrc にコピーするなり。
ども
323 :
311 :2008/06/13(金) 00:27:47
>> 317 できた!ありがとう! 他の人もアドバイスありがとう! でもなんで <C-W><C-W> じゃだめなんだろう
あのー vim使い始めて、3ヶ月の者です vimって使えば使うほど、楽なんですが どっぷり浸ってしまっていいのでしょうか?
_ /)/ノ,> す 嵌 | lン.)っ で っ |/ .〈/ に. て l ) 泥. い |iii|||||| 中 る |iii|||||| : |ii|||||||| 首. : ┌|ii||||||||| ま : 、〜"イイ__ /iiii||||||||||| で : ゝ:::::::::::レヘ .|__「iii||||||||||||| : : ;;;;;;;;;;;;;;;;;;;;;イ::::::::</(ン ,_,<||||||||||||l'';;;;;;;,,,,, : ;;:;:::;;;;;:::,,,;;;ム;/);;;モヽ u (ニ'ヘ||||||||l;;;::;;;;;;;..''':;;;, ::::;;;;;;:;;;;;..,,,,;;;;/フ;;;;;/);;;;:'''''::::;;;;;;;:::::'';;:;;;;;;,,::::;;;;;,,,, ;;;;;:::;;;;;;;::::::'''',,尸;;;;;';;''::::::;;;;;;;;'';;;::::;;;;;;;;::;;;:;;;;::::::''';;;;;;; ::;;;;;;;;:::;;;;;;;;;'';;;つ;;::::;;;''';;;;;;,,,'':::::::;;'';;;;;;::::;;::;;;''::::;;;;;;;
vi は大抵の環境にあるので、どっぷり浸ってしまっていいと思うけど、vim はどうなんだろうね。
ほとんどの場合でviってvimのエイリアスになってね? だから、vi使ってるつもりでvim使ってるというオチ。
というかviも入ってないような環境だったら何で編集すんの?ed?
cat
デフォのviがvimであるような環境なんて Linux以外にあんのか?
>>324 です
Fedora Core 8だと
ユーザ権限の場合、viを起動するとvimエイリアスが起動します
スーパーユーザ権限だと、viを起動するとviが起動します
vim始めた頃、何でこうなるのかさっぱり分からなかった
orz
>スーパーユーザ権限だと、viを起動するとviが起動します いや、それもvimだから
jvim は Plamo くらいでしか見なくなったけど busybox vi: 日本語不可 e3vi: 操作が独特 なんつー罠もある。
nviもこの間まで普通に使ってたよ。
nvi-m17nってUTF-8に対応してねえんだよな、確か 今時のエディタとしては致命的だわな
ちょっと質問なのですが、洗濯物干してたら雨でびしょびしょになりました(´・ω・) もう一回洗い直した方がいいでしょうか?(そのまま部屋干ししたら臭くなる?) グーグルとかで調べても分からず、ここに行きついた次第です。 どうかよろしくお願いします。
>>338 雨は埃とか混ざってて結構汚れてる
だから雑菌が繁殖しやすいし、そもそもそのまま乾かすと染みが残るかもしれません
洗いなおした方が無難でしょう
>>338-339 なぜ、ここに行き着いたのでしょうか?
グーグルはそこまで使えないサイトでは無いと思います。
とりあえず、落ち着いてスレタイを10回声に出して読んでみましょう。
どうかよろしくお願いします。
>>332 rootでvi --versionとかやってみたら何気にvimだったってオチはない?
minimalかコンパチか分からんけど
>Vimは,Emacsと並び人気の高いテキストエディタです。 ダウト。Emacs > Vimだ。 それくらいははっきり認識してもらわんとな・・・。
>>346 世間知らずな学生さん?
商業誌の常套句にいちいち目くじら立てるな。しかもVimスレでw
teach yourself traditional vi in 24 hoursってないのかな
>>346 そうなの?
オレはもうとっくに逆転してるものだと思っていた。
全ユーザーでいうともっとライトなエディタ(geditとか)の方が高いんじゃないかな。 ある程度スキルがある層だとvimが一番利用率高いと思う。 emacsはスキルある中でも妙な濃さがある層。
geditってメモ帳だと思ってたわ
>>343 > コマンドに対するフックを定義する方法はない。
なるほど。情報ありがとうございます。
一生懸命マニュアル見てました。
com! Kwbd enew|bw #|bn
cabbrev <expr> bd ((getcmdtype() == ':' && getcmdpos() <= 3)? 'Kwbd' : 'bd')
これで思い通りに動作しました。
「getcmdpos() <= 3」の「3」がポイントで、カーソルの位置を示しています。
「:bd」なので3、「:hoge」なら5です。
他に参考にしたサイト:
http://vim.wikia.com/wiki/VimTip1285
俺はプログラマ層だと、 emacs(系) > 秀丸 > vimの順だと思ってる ま、vim使うけど
355 :
名無しさん@お腹いっぱい。 :2008/06/17(火) 23:24:54
システムが壊れかかった鯖の復帰作業用に 最低限の機能で良いからvi使えるように なっときや、と婆やに言われたおいらが通りますよ。
Vim > 秀丸 >> xyzzy 鯖によってnviやVimだったり viマンセー
秀丸のなにがそんなにいいんだか・・・
小指が少林寺並に鍛えられるところかな
359 :
名無しさん@お腹いっぱい。 :2008/06/18(水) 00:25:25
それEmacsじゃね? 終了するだけでCtrl2回も押すってドンだけマゾ仕様なんだ
361 :
名無しさん@お腹いっぱい。 :2008/06/18(水) 00:42:08
ctrl 押しっぱなしで x、c て押せないのか。。。
>>359 だって立ち上げたら1週間は終了させないもん。
sticky controlが欲しいなって思ってるけどいっこうに本家に取り込まれなくて困ってる所なんですよ
>>363 sticky control って何じゃらほい?
と、全くググらずに聞いてみる。
>>364 Caps Lock ならぬ Ctrl Lock
と何も知らないのに適当に言ってみる
>>344 名無しのvim使い の中の人も書いたみたいだな。みな買った?俺まだw
レジストりを使用せずに起動ってオプションはないですか? -silent -unregister だとレジストリ削除するだけで、vim 起動しないし。
>>368 スレ違いだよ
portable gvimでも使ってれば?
それはシェルに登録したり解除したりするだけじゃないの? 起動するに当たってレジストリは使ってないと思うけど。 あ、でもインストーラ付きのやつはインストーラーがレジストリ使ってるか。
372 :
368 :2008/06/19(木) 01:02:33
スレ違いすみません。むこうで聞いてきます。
スレ違いではないよ
そうだね、板違いだね
>>374 辛かったら早めに誰かに相談しろよマジで
人生捨てたもんじゃないぞ
>>349 手取り足取り一日中つきそって教えてあげようか?うほっ。
vimでctags使うときに tagsファイルがカレントディレクトリにないとうまくいかないのだけど gnu globalみたいにカレントディレクトリにtagsファイルがないときは 上に上に登っていって探してくれたりする便利な方法はないでしょうか?
>>377 ~/.vimrc で
set tags=tags;
380 :
377 :2008/06/22(日) 13:51:43
>>378 さん
>>379 さん
無事できました。ありがとうございます。
vimrcに以下のようにしました。
これでカレントディレクトリにtagsファイルがなかったら
上へ上探しに行って、それでもなかったら
今度は下に下に探しに行くようです。
tags=tags;
tags+=./**/tags;
開いているファイルのディレクトリに移動する方法ってないんでしょうか? 以下のようなイメージです。 :pwd /home/hoge :e path/to/file.txt :どうにかする :pwd /home/hoge/path/to
382 :
381 :2008/06/23(月) 01:01:10
もちろん上記の例において、 :cd path/to とやれば実現できるというのは知っています。 カレントディレクトリを開いているファイルのディレクトリに 移動するコマンドなどがあれば、それを知りたいです。
もしくは、こうかな :cd %:h
>>382 :cd %:p:h<CR>
:lcd %:p:h<CR>
これをコマンドに登録するなり、キーマッピングするなりすればいい
387 :
383 :2008/06/23(月) 01:19:08
ワロタ
あるあるw
set autochdir は人気ないのか
392 :
383 :2008/06/23(月) 12:19:15
みんなありがとう・゚・(つД`)・゚・ ウェ―ン 不味い昼飯食ってきます。
SDのVim特集どうよ
SDってなんですかー?
ガンダム じゃなくてソフトウェアデザインかな?
vimて日本で何人くらいつかってんのかなぁ
1万人ぐらいいるかなあ。いるといいなあ。
emacs の10分の1いるかいないかだろう。
firefox3の正式版を公開したときに、DL数カウントのイベントをやってたけど 朝9時頃で東京1万 大阪3千 日付変わる頃になって東京6万 大阪1万くらいだった これより少ないだろうなぁ
使ってるとする頻度にもよるが、サーバにログインしてちょこっとvimで何かを編集、 みたいなのも含めれば、emacsの数倍は使ってる人いるんじゃないか?
キモいおっさんしか使ってないみたいよ
自己紹介乙です。
>>390 Note: このオプションがオンになっていると動かないプラグインがある。
((((;゚Д゚))))ガクガクブルブル
SDのVim特集 ・Vimスクリプト入門 → 内容ぬるすぎ! ・便利Vimスクリプトダイジェスト → なんでそんな使えないやつばっか取り上げるの?! ・VimスクリプトPython連携 → 俺Rubyの方が好きなんですけど・・・ 以上。
>>403 書き換えればいいんだよ
相対パス名でバッファにアクセスしてるのをバッファナンバーか絶対パスで
アクセスするようにすると動く
昔のminibufexplorerだっけ。今はどう動いているのかしらん
>>404 そんな不満点をクリアした内容のウェブサイト立ち上げてね.
(ひやかしでなく,ちゃんと読むとおもう)
雑誌で唐突に初心者お断りな話始められたら逆に驚くってのw
>>404 それはちょっと言い過ぎかなって気もするけど、
「特集」と銘打っておいてそれはないだろう、というレベルなのは確か。
「VIM入門」の方が適切なタイトル。
ただ、他の記事で面白いのあったから、損した気分ではない。
>>404 初心者がvimスクリプトに興味持つには大変役立った.
>>403 設定値によってスクリプトが動かなくなるオプションはたくさんあるぞ。
大多数といってもいいかもしれない。
だからスクリプト側で
let optionname_save = &optionname
みたいにオプション値を退避する手法が一般的。
ヘルプにそう書いてあるのね
7.2の目玉機能はスクリプトの浮動小数点数だけか。
マイナーバージョンアップなのに目玉機能があるなんてすごいじゃないか。
>>413 vimとは関係ないけどrubyなんて毎回マイナーバージョンアップで
いらない機能とバグをセットでいれてくるぞwwwww
>>414 まるで昔のWindowsにおけるServicePackのようだwww
バグ修正+新機能(バグあり)
永久ループってこわくねwww
>>412 7.1.300+その他修正パッチ+各種syntax/ftplugin追加+他色々だしね。
git使い的にはgit関連のsyntaxやftpluginが取り込まれてるのはありがたいかなー。
しかしFloatって需要あったのかな。わざわざ追加されたくらいなんだからあるにはあったんだろうけど。
7.2変更点まとめてあるページあるか
>>417 CVSで取得して
:h version-7.2
>>418 コンパイルするのやだからコピペしてくれるかな?かな?
わざわざコンパイルしなくても、runtime/doc/version-7.2.txt とかそういうファイルをチェックアウトすればいいだけじゃね?
vimを使っているのですが、カーソルの移動についつい矢印キーを使ってしまいます。 そこで、vim上だけ矢印キーを無効にしてしまいたいのですが、そんなことってできるでしょうか?
>>422 別にいんじゃね?矢印キー使ったって。
vimを使いたいのか快適にテキストを編集したいのか・・・まぁ
本末転倒こそ漢の道かもな。
どうしてもというのなら.vimrcでimapするなりどうぞ。
>>422 そのうち慣れてくるからキーはいじらなくていいと思うよ。
ちなみに拙者はラップトップのマウスパッドを殺して使ってます。
Ctrl + [ でコマンドモードに入れることを知ったら、自然とhjklで移動するようになった。 いちいちEscまで手を伸ばすくらいならカーソルキーに手持って行ったほうが早いじゃんと 最初はそう思ってた
>>422 noremap <unique> <Up> :<C-U>qall!<CR>
noremap! <unique> <Up> <Esc>:qall!<CR>
noremap <unique> <Down> :<C-U>qall!<CR>
noremap! <unique> <Down> <Esc>:qall!<CR>
noremap <unique> <Left> :<C-U>qall!<CR>
noremap! <unique> <Left> <Esc>:qall!<CR>
noremap <unique> <Right> :<C-U>qall!<CR>
noremap! <unique> <Right> <Esc>:qall!<CR>
これを設定ファイルに書きこめ
>>425 そうそう、Ctrl+[を知ったばかりの初心者は君のように考えるもんだよ。
>>423-428 レスサンクスです。
>>426 はちょっと凶悪に思えたので、とりあえずヒントにさせてもらって、
以下のようなのを.vimrcに書き込むことにしました。
noremap <Up> ""
noremap! <Up> <Esc>
noremap <Down> ""
noremap! <Down> <Esc>
noremap <Left> ""
noremap! <Left> <Esc>
noremap <Right> ""
noremap! <Right> <Esc>
今日気づいたこと: <C-f>,<C-b>を使うとカーソルがウィンドウ最上行/最下行に移動してしまうが <C-d>,<C-u>では移動しないので、その方が好みなら nnoremap <C-f> <C-d><C-d> か nnoremap <C-f> <C-f>zz としておくといいかも。
"スムーズスクロール nnoremap <expr> <C-B> <SID>SmoothScroll(0) " 一ページ上 nnoremap <expr> <C-U> <SID>SmoothScroll(1) " 半ページ上 nnoremap <expr> <C-D> <SID>SmoothScroll(2) " 半ページ下 nnoremap <expr> <C-F> <SID>SmoothScroll(3) " 一ページ下 let s:scrollcommand=[ \'repeat("2\<C-Y>",&scroll-1)', \'repeat("2\<C-Y>",&scroll/2-1)', \'repeat("2\<C-E>",&scroll/2-1)', \'repeat("2\<C-E>",&scroll-1)', \] function! s:SmoothScroll(c) try if w:scroll==&scroll return w:scrollcommand[a:c] endif catch endtry let w:scroll=&scroll let w:scrollcommand=map(copy(s:scrollcommand),'eval(v:val)') return w:scrollcommand[a:c] endfunction
スクロールはスムースに限る、と考えていた時期が俺にもありました。
1ピクセル/フレームでスムーススクロールしてくれる快適さって 忘れちゃったなぁ...
1画面スクロールするのにえらく時間がかかりそうな。 UXGAだと20秒ぐらい?
んー、俺も前はスムーズスクロール使ってたけど、 いつのまにかやめちゃったなぁ。
のぞきこんでる他人にとっては分かりやすくなるんだけどね。 自分にとっては不要だ。
>>431 鬼軍曹.vim というのが実際にあるんだなw
鬼軍曹.vimは以外と優しい設定だな
つーか
>>426 が鬼畜すぎるだけだなw
昔、BASIC時代に、F5キーにNEW[CR]を割り当てていたのを思い出した。
鬼軍曹つうぐらいなんだから、ハートマン軍曹を彷彿とさせる
>>426 ぐらいは必要だと思ってしまう。
>>443 :he :qall
>>445 qall! は鬼軍曹だ!
wqall! は本物の鬼軍曹だ!
>>446 半端な状態でwqallされたらたまったもんじゃねえよ・・・
<esc>ggdG:wq!
autocmd BufWrite * qall!
おまいらいい加減にしろw
:!rm /
カーソル移動以外に置き換え可能な無駄な作業てあるかな :wq<CR> => ZZ とか?
ZZすきじゃないな
俺はcコマンドがいつまでたっても使えるようにならない
アニメじゃない
ciw はよく使うようになった テキストオブジェクト使うようになってからかな
以前から思っているが %s/hoge/moge/g は冗長だ。 s/hoge/moge でバッファ内全置換になるべき。 カレント行だけより全行、最初の1個だけより行内の全マッチを 対象にしたいことの方が多いのだから。 まあ、元の ed ではその需要が逆だったんだと思うが。
むしろ置換だけ行指向を無視するなんて逆に違和感を感じるね
パッチを順逆にあててしまった。 エラーにならなかったので、まぁいいやと思ったが、こんな表示になってもうた… $ vim --version Included patches: 1-327, 329, 328, 330
user vimrc file として $HOME/.vimrc 以外を読みに行かせる方法はありますか? 環境変数を書き換えるような手軽に出来る方法で
vim の起動オプション -u
ヘルプみると、$VIMINIT も使えるのかな。 :he .vimrc
>>463 どうもです
じゃあ vim を起動する度に別の .vimrc を読ませるには
alias に登録しておくくらいしかないのかな
>>464 どうもです
$VIMINIT はそれ自体が ex コマンドと見なされるみたいですね
ヘルプの同じところに $MYVIMRC ってのがありました
試してみます
環境変数 MYVIMRC は期待の動作をしてくれませんでした むしろ読み込まれた user vimrc file が MYVIMRC に設定されるみたいです export VIMINIT="source /path/to/vimrc" で期待の動作でした ありがとうございました
vim(゚听)イラネ
ぐおお せっかく vim を 256 color で表示できる準備をしたのに colorscheme がほとんど gvim 用で vim 用の設定は相変わらずシステムカラー使ってる… 何とかならないですかね?
vimさすがや firefoxの拡張まででてきてる マンセーーーーーーーーーーーーーーーーーーーーー
Vimは使うがFirefoxは使ってないんで関係ねっす
それは、かわいそうに^^;
firefoxの拡張って、firefoxがvimのキーバインドで操作できるってこと? それともfirefoxのタブ内にvimが起動できるってこと?
前者じゃなかったかな どっちにしてもFirefoxはFirefoxでいいからいらね
vimperatorだろ? あれは神拡張の一つ
w3m の hjkl 動作と微妙に違うのがストレスになって、結局外してしもうた。
w3mのhjklはいいのだけど、HLMがきかないところとかがきにいらない>w3m
ブラウザはEpiphanyだわ
それなんて読むん?
エピファニー
Confusion will be my Epiphany.
>>479 つ キャレットブラウズモード
とかそういう話ではない?
標準だとF7だけど、vimperatorだとiでキャレットブラウズに移行、escで抜ける
つーかキャレットブラウズにしないとvimperatorではコピーもできんよな
ま、Javascriptや他の拡張機能との相性とかがウゼーから
俺はvimperatorはちょっと遊んだだけで無効化したわ
:g/^test/p の出力結果をコマンドラインの sort -uにフィルター掛けしたいのですがどうすればよいでしょうか。 :g/^test/p | sort -uとしたら挙動がおかしくなったので強制終了しました。
顧みると、俺はあまりエディタ・コマンドを使わないなぁ。 :%! grep '^test' | sort とやることが多い。というかそれしか知らない。
だめかな? :g/^test/m0 '<,'>!sort
vimのhelpで ctrl+] 押すとカーソルの位置の単語のページに飛ぶけど、あれはどうやってるの?
>>490 ただのタグジャンプだよ
:h :helptag
492 :
490 :2008/07/12(土) 13:36:23
>>491 ただのタグジャンプですか・・
vimのスクリプトではないんですね
タグジャンプはすげぇ便利だよ
495 :
名無しさん@お腹いっぱい。 :2008/07/19(土) 07:07:16
Vine Linux 4.2のvim 6.4.10を使っています。 vi互換モードが好きなので、.vimrcに set compatible を書いています。 この.vimrcの状態で J を打つと、joinされずに、一番下の行に :call <SID>DoRangeJoin("")<CR> と表示されてしまいます。 Jではなくて、 :join であれば期待通りにjoinできます。 .vimrcにset compatibleを書かなければ、こんな問題は起こりません。 また.vimrcを空にして、vimを起動し、 :set compatible した場合ですと、やはり期待通りに J できます。 つまり、.vimrcにset compatibleを書いた場合のみ、J が期待通りに動きません。 解決方法はあるでしょうか? よろしくお願いします。
とりあえず :let plugin_format_disable = 1
既出かもしれませんが、挿入モードで全角だった場合に、Esc一発でコマンドモードに戻すにはどうすればいいの?
>挿入モードで全角 ってどういう意味ですか。
>>497 inoremap <silent> <ESC> <ESC>:set iminsert=0<CR>
>>498 挿入モードで日本語を入力してる状態から、Esc一発で日本語入力offにしてコマンドモードに戻る方法という意味です。
>>499 ありがとう、でも解決しなかった・・。vimはcygwinで7.1を使ってる。
gvimでは動くみたい。kaoriyaのgvimrcにこの設定が書いてあった。
入力の切り替えは、インプットメソドがにぎっってるから無理ちゃうの? そのインプットメソッドが、vimモードなるものを実装してたらできるかもしれんが
505 :
495 :2008/07/21(月) 07:48:03
>>495 vimを使うのを止めて、
rpm -e vim vim-common
Plusに入っているjvimを使うことにしました。
apt-get install jvim
こちらのjvim(3.0-j2.1b)ですと、期待通りの動作になりました。
506 :
500 :2008/07/21(月) 07:55:47
ひさしぶりにここに来たら、ちゃんとvim7のマニュアル翻訳してくれてた 人がいたのね。 これでおいらのページはお役ごめんだな。 明らかにこっちのが使い易そうだから、次のテンプラ からはこちらに変更して欲しいな。 # 近いうちにおいらのページは削除するな。 改めて、yukihiro.nakadaira さん、GJ!
509 :
508 :2008/07/26(土) 22:34:35
510 :
名無しさん@お腹いっぱい。 :2008/07/27(日) 01:59:24
html.vimを使って見たいと思うが、日本語のマニュアルはどこにあるの だろうか?分かる方、教えて下さい。
512 :
名無しさん@お腹いっぱい。 :2008/07/27(日) 07:16:59
>>512 君は学校行ってないの?
これが分からないと、日本でも街中の看板とか意味が理解できなんだろうね。
514 :
名無しさん@お腹いっぱい。 :2008/07/27(日) 10:45:44
>513 そういう事は聞いていない。答えになっていない。 日本語が読めないの? どこの人?
気違いの相手するな馬鹿。 sageてない時点で要らない子なのは判るだろ?
>>512 欲しければ 自力で翻訳するか、対価を払って人に頼めばいいだろう。
わざわざ ageるな。
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ Λ_Λ < ふぅー、チョパリーのふりはつかれるぜ <丶`∀´>513\____________ ( ̄ ⊃・∀・)) | | ̄| ̄ 〈_フ__フ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ Λ_Λ < 何見てるニダ。 <丶`∀´ >513\____________ ( ̄ ⊃・∀・)) | | ̄| ̄ 〈_フ__フ
518 :
名無しさん@お腹いっぱい。 :2008/07/27(日) 11:40:26
>516 ついでに、この掲示板も閉じたら
>>514 僕ちゃん夏休みの宿題はもう諦めたのかな?
520 :
名無しさん@お腹いっぱい。 :2008/07/27(日) 13:30:27
>519 阿保 返事が無い事を見れば、とっくに解決している。 下らないことで、汚すな
そんなことよりお前ら、「パンツ ◆7vYOZotTDo」がリアルで逮捕されたことをどう思うよ? 埼玉県上尾市上尾村、無職 小沢史人 容疑者(32)のことだよ。 こんなところで煽りあってる場合じゃねーんじゃね?
煽りあいより、さらにどうでもいいでがす。
2chでコテハンなんかつかてるやつは、目立ちたがりやだから 良くも悪くも そして、ほとんどは悪い方で目立つ
7.2 cygwinでmakeしてみた -with-iconvが要らなくなったみたい。 いまんとこ7.1と違いはわからん
日本語入力を起動すると、 "-- 挿入 --" という表示が "-- IM 挿入 --" になった。すげえ!! …って、誰が嬉しい機能なんだ。
less.shってページャとして常用するにはイマイチだと思っていたけど mysql の pager に設定すると、横スクロールができるからなかなかいい感じ。
本当に本当に初心者質問で失礼します。 Windows 環境にて Kaoriya さんの Gvim を使っていますが 起動時に毎回以下のメッセージが出て邪魔なのです。 --------------------------- Vim Initialisation --------------------------- Cannot load registered type library. Do you want to register Vim now? --------------------------- はい(Y) いいえ(N) --------------------------- これを出さないようにする方法はありますでしょうか?
はい(Y) で登録したら、次からは訊かれないんじゃなかったっけ。
531 :
529 :2008/08/14(木) 17:18:13
>> 530 レスありがとうございます。 また説明不足、失礼しました。 はい(Y) と応えてもまた聞かれてしまうのです。 以下に はい(Y) を選んだ後の状態について書きます。 まず以下のメッセージが表示されます。 Registered successfully OK そして OK ボタンを押すと以下が表示されます。 You must restart Vim in order for the registration to take effect. OK ここで OK ボタンを押すと gvim が終了してしまいます。 # エラーメッセージは表示されません。 # また gvim のウィンドウが開く様子もありません。 仕方がないので再度 gvim.exe を起動します。 すると最初の はい(Y) を選択するメッセージボックスが 再び表示されてしまいます。以下、延々と前述の通りの動作となります。 ちなみに いいえ(N) を選ぶと gvim が起動します。 が、一度終了し再度起動するとやはり、 はい(Y)、いいえ(N) を選択するメッセージボックスが 表示されてしまいます。
533 :
529 :2008/08/14(木) 22:33:33
>>532 レスありがとうございます。
結論から先に書きますと、状態は変わっていません。
-silent オプション付きで -unregister, -register してから
起動してみましたが、依然としてメッセージが表示されてしまいます。
起動時に -silent を付けたりもしましたが変わりません…。
度々、スレ汚し恐縮ですが何か情報がありましたらご教授ください。
534 :
529 :2008/08/14(木) 22:51:58
Gvim のバージョンすら書いて無かったですね。失礼しました。 バージョンは以下です。 VIM - Vi IMproved 7.1 (2007 May 12, compiled May 31 2008 10:29:00) MS-Windows 32 ビット GUI 版 with OLE サポート 適用済みパッチ: 1-305
:help -register >you need to run gvim as "Administrator". で駄目だったらunix板の範疇でないような。
536 :
529 :2008/08/14(木) 23:32:55
>>535 レスありがとうございます。
ヘルプで -silent の手前にあったので -register も既に見ているのですが
管理者 (Administrator) でログインしているので、
これも違うような気がします…。
解決難しそうですね(´・ω・`)
Windows 版 gvim 板があるか探しに行くか、IRC のチャンネル探してみます。
λ...
537 :
529 :2008/08/14(木) 23:42:14
538 :
529 :2008/08/14(木) 23:51:35
何度も書き込みごめんなさい。 えー…解決しました。一応。 なぜか Vector 様にある Gvim 5.7 を起動した後は、 Kaoriya 様の Gvim 7.1 も通常通り利用できるようになりました…。 念のためレジストリを gvim で検索して削除してから、 再度 Kaoriya 様 Gvim 7.1 を起動しましたが問題は再発しません。 …分かりません。 分かりませんが問題はなくなりました(´・ω・`) スレ汚し失礼しました。
540 :
529 :2008/08/15(金) 01:28:24
>>539 Σ
これは失礼しました!
スレ名を見て、ここの過去ログかと勘違いしてました…。
ありがとうございます。
541 :
名無しさん@お腹いっぱい。 :2008/08/16(土) 11:15:56
:let var = "hello!" :!echo var :!echo "hello!"みたいに、ここで変数varを展開したい。 どうすればええの?
:echo var でいいんじゃね? ! いらない
もしかして、外部のコマンドで、変数の値を使いたいってことかな? そっちの質問の場合は :echo system("echo " . var ) な感じ。
vimで文末の改行を除去したいのですが、どうしたらいいんでしょうか?
J
i Delete(BS) Esc
文末って行末じゃなくて ファイル最後のって意味じゃないの?
それは文章末。
文章末=文末 だろ?
つまり。の後??
文がいくつか集まったものが文章。
ぶんまつ 【文末】 文の終わり。 ぶん 【文】 (1)言語単位の一。思考や感情を言葉で表現する際の、完結した内容を表す最小の単位。 多くは複数の文節によって構成されるが、「待て」「さようなら」のような一語文もある。 文字で表す場合には、通常、文の切れ目に句点「。」を打つ。センテンス。文章。 (2)複数の文(1)から構成され、あるまとまった思想を表したもの。文章。「―を練る」 ぶんしょう 【文章】 (1)話し手または書き手の思考や感情がほぼ表現し尽くされている一まとまりの統一ある言語表現で、 一つもしくは複数の文(1)から成るもの。 一編の小説・評論・詩などの類。講演や複数の話者による座談など音声言語を含めることがある。 それ自体で表現が完結しているものならば、和歌や俳句も文章といえる。 (2)「文(1)」に同じ。
範囲を指定して置換するにはどうすればいいですか?
邪道かもしれんけど 1. Vで対象範囲を指定 2. : を押下 3. :'<,'> に続けて、s/置換元/置換後/g と入力、return/enter ファイル全体の場合は、:%s/〜
普通に :5,10s/aaa/bbb/g とかじゃだめなん?
>>557 その手が在ったか!ありがとうございます
IEEEの無線のスレかとオモタ
ルーラーに文字コード表示させたい
と言ったらできました
行単位の範囲指定で、開始行,終了行番号を入力するのと、ビジュアルモードで範囲指定するのと、 Vimユーザにとってどっちが使いやすいって思うものなんだろう? 自分はV3jjみたいに、ビジュアルモード→大まかな行数入力→jkで微調整という感じなんだけど。 他の人はどうしてるか気になった。
>>562 >行単位の範囲指定で、開始行,終了行番号を入力するのと、ビジュアルモードで範囲指定するのと、
小さい範囲の場合は、ビジュアルモードを使います。
広い範囲だと、a や b でマークしてから、
:'a,'bCommand
します。
>>563 「.」で現在のカーソル位置が指定できるぞ。
文字列 # debug [ と # ] debug を含んだ行と,この2行に挟まれた部分を ファイル全体に渡って削除したいのですが, どのようなコマンドで実現できるでしょうか?
>>565 :g/# debug \[/,/# \] debug/d
>>566 それって2個あったときにがっつり消しちゃわない?
568 :
565 :2008/09/08(月) 05:18:53
MacのターミナルからVim7.0.234 を使っています。 :set nocindent :set lispなどをしているのですが Lispコードを編集しようとするとインデントがうまくいきません。 Emacsユーザーの方と違うというか、見づらくなってしまいます。 何かうまい方法が有ればよろしくお願いします。
:help 'lisp' とりあえず autoindent と cpoptions の p フラグと lispwords の確認など あとは indentexpr でカスタマイズ 基本は lispindent() を使いつつ気に入らないとこだけ変える
いやっほー
ありがとうございます。 明日(今日)ためしてみます。
Emacsはtabが2spaceなんだよということを設定し set expandtabを設定したところうまくいきました。 もうますますVimが便利になりました。
vimのメーリングリストにはどのような物がありますか? よろしくお願いします。
fj.* はメーリングリストでないのでは?
VimにはEmacsなどにあるプログラミングの補助機能は有りますか? 新規HTMLファイルを作成すると自動的にテンプレートを入力するなど そういったテンプレートを入力する方法は有りますか? よろしくお願いします。
C++とVimなら大丈夫だが EmacsとHTMLに詳しくないのでよく分からない
581 :
名無しさん@お腹いっぱい。 :2008/09/17(水) 19:21:28
:h template
>>579 公式サイトにスクリプトがたくさんあるよ。
ありがとうございます。確認してみます。
$ emacs shinki.html 真っ白なバッファが開くだけで何も起きない…
>>584 html-helper-modeという物が有り
それを標準のhtml編集モードに設定してあるのです。
>>all
ありがとうございます。無事解決しました。
586 :
名無しさん@お腹いっぱい。 :2008/09/18(木) 08:17:08
dとjのキーを入れ替えるために noremap d j noremap j d としましたがddとすると2行削除されてしまいます。 dとjのキーを入れ替えるにはどうしたらいいのでしょうか?
>>586 入れ替え自体はその設定でできるよ。
他の設定が原因で上手くいってないんじゃないかな。
:map d
:map j
の結果はどうなってる?
オペレータ保留モードを考慮に入れないと。
質問です。 unix系ではctrl+スペースキーで日本語切り替えなのですが、 windowsだとalt+半角全角キーになっています。 基本的にはosの仕様だと思いますが、今までunix系でvimを使用していたので、 windowsのvimでもctrl+スペースキーで日本語切り替えしたいのですが どのようにしたら実現出来ますでしょうか。 ただし、windowsのvim以外では通常通りalt+半角全角キーで日本語切り替えにしたいです。
その条件では無理です。
AutoHotKeyとか外部ソフト使わないと無理だろうね
>>586 set lmap=dj,jd
>>589 inoremap <silent> <C-Space> <C-^>
nnoremap <silent> <C-Space> :<C-u>let &iminsert=(&iminsert == 2) ? 0 : 2<CR>
593 :
名無しさん@お腹いっぱい。 :2008/09/22(月) 16:09:56
C-x や C-a でカーソル上の値を上下できますが、カーソル上の値を上下した値を使って その行の置き換えって出来ますか?
日本語でおk
>>593 exモードで<C-R><C-W>とするとカーソルの下にある単語を拾ってこれるけど、それでどうにかならないかな?
1 abc という行の、1にカーソルがある状態で
<C-A>:s/abc/<C-R><C-W>/<Enter>
とやると、
2 2 という行になるよ。
日本語でおk は概ね読む側の読解力の問題とどこかで見たことがあるが、本当のことなんだな。
以前は読解力がある上で、文法のおかしなレスに対して言っていたんだけどね。 いつの間にやらー
kwsk、あたりが妥当かな
というか
>>595 の解答で当ってるの?
カーソル下のwordを使って置換をする方法なら、
>>595 の解答で当ってるけどさ
>>599 カーソル位置の数値を行番号とみなして、
その(行番号の)行を置き換えしたい
ってことじゃないかな?
aaaBBBBaaaBB aaaaBBaaBBB BBBaaaaBBBB aaBBBBaaaBB ↓ cccBBBBaaaBB ccccBBaaBBB BBBaaaaBBBB ccBBBBaaaBB のように、行頭にある特定の文字だけを同数の別の文字に置き換えたいのですが どうすれば良いでしょうか?
s/^\(a*\)/\=tr(submatch(1),"a","c")/
おおおおーそんなことができるんですかあ ありがとうございました!
FreeBSDでvim 7.2を--enable-multibyte --with-features=big&パッチ1-22まで適用してコンパイルしたんですが、 「vim .」とかでファイルエクスプローラを起動するとディレクトリの頭に固定で"e"がついて移動とかができません。 皆さんの環境では発生していませんか?
ああ、本当だ。dired(?)なんて使わないから全然気付かなかった。 ちなみに v7.2 パッチなし。
vim使いの人に質問です。 vimで、任意の文字列を削除してからそこに決まった文字を挿入する操作を繰り返す場合、 どのような操作を行えば楽でしょうか? 例えば、 if (abcdef == 1) { aaaa(); } if (ghijkl == 2) { bbbb(); } if (lmnop == 3) { cccc(); } ↓ if (xxxx == 1) { aaaa(); } if (xxxx == 2) { bbbb(); } if (xxxx == 3) { cccc(); } のような編集をしたい場合です。 windowsのテキストエディタだと、クリップボードに「xxxx」を入れた状態で、 変更したい範囲をマウスかShift+矢印で範囲選択してCtrl+V、 という操作を繰り返すところですが、vimだと任意の文字列を削除した時点で レジスタの内容が削除した文字に置き換わってしまうため、 削除→貼り付けという操作が楽に行えない気がします。
xxxxを""以外のレジスタに入れといて たとえば"aなら"apでペーストできる 詳しくは :h registersで 繰り返しはマクロを使うとか:sで置き換えるとかお好みでどうぞ
3カ所ぐらいならcwでワード置き換えて.で繰り返しだな。俺の場合。
>>606 >vimで、任意の文字列を削除してからそこに決まった文字を挿入する操作を繰り返す場合、
単純に、正規表現による置換を知らないのでは?
:%s/if\s*(\s*\w\+\s*==/if (xxxx ==/
とか。
「 最初に "if" があり、0 個以上の空白、"(" があり、0 個以上の空白、
1個以上の英数字があり、0個以上の空白、最後に == がある」文字列
を
「if (xxxx ==」
に置換します。
すれ違いだが、switch文使わないの?
質問者ではないが、 switch文にdefaultラベルがないとワーニングを吐くコンパイラもある。 空default書くだけでパスできるのだが、あまりスマートでもない気もする。 俺なら分岐の数が3つくらいなら、可読性が損なわれないならifの羅列にする。
コマンドモードのTABによるキーワード補完で 大文字/小文字の区別をしないようにするには どう設定すればいいですか?
任意の単語に移動して qqでマクロ開始して ciw で単語を消して入力モードに入って xxxxxと打ち込んだらエスケープして q を押してマクロおえる 次の任意の単語に移動して@@でその単語も書き換える
ちょw
X上のターミナルエミュレータ+screen上でvimを使っていて screenをデタッチ→Xを終了するとvimまで落ちてしまう vim -Xだと落ちないけど"*が使えなくなる -X無しで起動しつつXに釣られて落ちない方法はないですかね
616 :
名無しさん@お腹いっぱい。 :2008/09/29(月) 11:13:48
>>607-614 ありがとうございました。
例としてはif文を出しましたが用例は様々なパターンがあって、
保持している文字とある範囲の文字を置き換える操作全般に適用できる方法が
何かないかと思って質問させてもらいました。
("aPは、日常的に使う操作にシフト操作付きの3ストロークだとキツイと思いました)
俺もciwで続きは . だなあ。 ヤンクがすっ飛んだら u <C-R> yiwで拾いなおしたりしてる。なんかまぬけだけど。
619 :
名無しさん@お腹いっぱい。 :2008/09/30(火) 18:05:45
C-aでインクリメントしていくと、たまに数字が飛ぶことがあるのですが、 (17の上で C-a すると 20になるなど これは何かの設定になるのでしょうか?
017、のtypoという前提で。 :he nrformats うちは8進認識だけ勘弁して欲しかったので以下のように。 :set nrformats -= octal
shをオートインデントさせたいんだけどできますか?
1週間以上経つが未だ↑の意味が分からない。
>>622 set filetype=sh
syntax on
set ai
とかでいいんじゃない
3行目だけでいいんじゃない、と思う。
拡張子shのシェルスクリプトファイルに対し、オートインデント機能を自動で適用したい。
という意味であったと、
>>623 を見てようやく理解できた。
もしかしたら、シェルスクリプト特有のインデントを行いたい、という意味も含んでいるのかもしれない。
ワイドモニタばかりのご時世なのでこんなスクリプトを書いてみたんですが、 もっとちゃんとした、こういうプラグインってありませんか? function! s:SynchronizeWindow() let dctView = winsaveview() let nCurWin = winnr() let nCurBuf = bufnr("%") let nCurTop = dctView["topline"] let nCurBot = line("w$") exe nCurWin+1 . "wincmd w" let isOtherWin = nCurWin != winnr() if isOtherWin let dctView["topline"] = min([nCurBot+1, line("$")+1 - winheight(".")]) else exe nCurWin-1 . "wincmd w" let isOtherWin = nCurWin != winnr() if isOtherWin let dctView["topline"] = max([nCurTop - winheight("."), 1]) endif endif if isOtherWin if nCurBuf == bufnr("%") let lstPos = getpos(".") call winrestview(dctView) let lstPos[1] = max([min([lstPos[1], line("w$")]), dctView["topline"]]) call setpos(".", lstPos) endif exe nCurWin . "wincmd w" endif endfunction
627 :
626 :2008/10/11(土) 10:10:27
すいません、↑は 隣のウィンドウを今のウィンドウのbottom+1 から表示するものです。
scrollbindとか?
おれならこうかく function! s:SynchronizeWindow() let nCurWin = winnr() let nCurBuf = bufnr("%") let nCurTop = line("w0") let nCurBot = line("w$") wincmd w if nCurWin != winnr() && nCurBuf == bufnr("%") execute printf("normal! %dzt", nCurBot + 1) endif wincmd W wincmd W if nCurWin != winnr() && nCurBuf == bufnr("%") execute printf("normal! %dzb", nCurTop - 1) endif wincmd w endfunction
630 :
626 :2008/10/13(月) 21:42:49
>>628 scrollbindってオフセット付きじゃなくて
同じ行からの表示ですよね?
>>629 そうか、normalでノーマルモードの
キーバインドが実行できるんですね、
勉強になりました。
>>630 >>628 じゃないけど。
オフセット付きとか関係なくて、scrollbindしたタイミングでbindされるよ。
:e hoge.txt
gg
:vsplit
<C-W>l
<C-F>
:windo set scrollbind
<C-W>h
<C-D>
という感じでできたよ。
kaoriya版のVim 7.1を使っています。 gvimでコマンドモードで複数のファイルをタブで一斉に開く方法ありませんか? コマンドプロンプトからで言うと以下のようなイメージなんですけど。 start gvim.exe --remote-tab-silent <file1> start gvim.exe --remote-tab-silent <file2>
:argadd <file1> <file2> :argdo :tabedit とか?
>>633 どうもありがとうございました。
初めて知りました。
挿入モードからコマンドモードに切り替えるときに, 全角入力なら半角入力に切り替えてくれるような方法ってありませんか?
挿入時にのみ日本語変換機能がonになるskk.vimに、日本語変換を変更する。
>>636 ありがとうございます.ためしてみます.
vimをportsからインストールしましたが、ディレクトリを開いたあとに、ディレクトリ一覧からもう一度 ディレクトリを選択して表示することができません。。。。 " ============================================================================ " Netrw Directory Listing (netrw v132) " ============================================================================ e./ e.snap/ edev/ eetc/ (etcで enterを押したら、その下に動くようにしたい) :version VIM - Vi IMproved 7.2 (2008 Aug 9, compiled Oct 4 2008 17:05:37) Included patches: 1-6, 8-14 Big version with GTK GUI. Features included (+) or not (-): +arabic +autocmd +balloon_eval +browse ++builtin_terms +byte_offset +cindent +clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments +cryptv +cscope +cursorshape +dialog_con_gui +diff +digraphs +dnd -ebcdic +emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path +find_in_path +float +folding -footer +fork() -gettext -hangul_input +iconv +insert_expand +jumplist +keymap +langmap +libcall +linebreak +lispindent +listcmds +localmap +menu +mksession +modify_fname +mouse +mouseshape +mouse_dec -mouse_gpm -mouse_jsbterm +mouse_netterm +mouse_sysmouse +mouse_xterm +multi_byte +multi_lang -mzscheme +netbeans_intg -osfiletype +path_extra -perl +postscript +printer -profile -python +quickfix +reltime +rightleft -ruby +scrollbind +signs +smartindent -sniff +statusline -sun_workshop +syntax +tag_binary +tag_old_static -tag_any_white -tcl +terminfo +termresponse +textobjects +title +toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo +vreplace +wildignore +wildmenu +windows +writebackup +X11 +xfontset +xim +xsmp_interact +xterm_clipboard -xterm_save
だから、ディレクトリ名に "e." が付くせいで駄目なんじゃないかって、上の方で誰かが言ってたじゃん。
[表示] - [メニューバーの表示] のチェックを始めから 外しておくようにするには、どうしたらいいのでしょうか?
表示 メニューバーの表示というものが見あたらないけど、たぶんgvimrcに以下のものを書いておけばいいと思う。 set go-=m やりたいことと違ってたらごめんね
vimrcが開けません。 $ vi /home/ユーザ名/.vimrc のどこが間違えてるわけ?
まず.vimrcが存在するのか確かめてみては
OS:Debian 4.0r5 Gvim vim-LateXをサイトにしたがって~/.vim以下に展開、.vimrcに設定をコピペ したのですが.texファイルを開いても一切メニューに表示されません どのようにすればいいのでしょうか? よろしくお願いします。
>>643 vi ~/.vimrc ってやってみたら?
>>645 :scriptnames の結果を見る
648 :
名無しさん@お腹いっぱい。 :2008/10/29(水) 20:25:28
>>643 一般ユーザーで他のユーザーの .vimrc を開こうとしているとか…
開けない原因も出力しないVimって・・・
652 :
名無しさん@お腹いっぱい。 :2008/10/31(金) 20:40:16
最近 Bram がアップデートしないから、みんなネタ不足なんだ…
Vimのロードパス(?)設定って何処ですればいいのでしょうか? Gvimの:sh上でのwhichの結果とコンソール上のvimのwhichの結果に 違いが生まれてしまいます。よろしくお願いします。
which の結果は $PATH 環境変数によって変わる vim は $PATH を書き換えない (普通は) .shrc とかでなんか変なことになってんじゃないの
gvimなのかvimなのかちょっとわからん。 :highlight linenr ctermfg=1 ってやるとどうなるんだろう。
>>655 :scriptnames
とやってこれまでにロードしたファイルをみてみ
最後に設定した色指定が使われる
おそらくgvimrcから読み込まれるカラースキームが使われている
ちなみにguibgとguifgならvimrcでなくgvimrcに書く類のものだが、
当然書いても無駄で、常に自分の設定を適用したいのなら
次のようにする
augroup MyColorScheme
autocmd!
autocmd ColorScheme * highlight LineNr guifg=red guibg=black
augroup END
あぁごめん colorscheme読み込んだ後なら.gvimrcに highlight LineNr guibg=red guibg=black とかいてもいいかもしらん
659 :
655 :2008/11/05(水) 17:49:27
後出しになってしまい、すいません。
gvimではなく、vimです。
>>656-658 出来そうなものを試してみましたが、変化ありませんでした。
vimならguifgとguibgじゃなくてctermfgとctermbgじゃないか
quickrun.vimとかいう日本人がつくったプラグインを見かけたんだが、 これは$HOME/.vimfiles/ftplugin/ruby.vimとか各ファイルタイプの設定ファイルで setlocal makeprg=ruby\ % とかにしといて、実行するときはいつも :make するほうがvim的なルールにのっとってないか このときmapはグローバルでもバッファローカルでもなんでもかまわない
662 :
655 :2008/11/05(水) 21:44:50
すいません、やっぱり
>>656 さんの highlight linenr ctermfg=1 で、出来ました。
1〜9まではそれぞれの色がつき、10以降は文字と同じ色になったので、10にしておきました。
>>656-660 さん、ありがとうございました。
また、もう1つお聞きしたいのですが、 syntax off で構文ハイライトをオフにしているのですが、
カッコ ” 「」、{}” にカーソルがあると、対のカッコがその時だけハイライトされてしまいます。
これをオフにできないでしょうか?
gvimではなく、vimです。
663 :
656 :2008/11/05(水) 22:10:44
そりゃあよかった。 対のカッコがハイライトの件だけど、個人的にはハイライトよりもカーソルが 一瞬もってかれる事の方がいやだったので、謹製のプラグインを無効にしてる。 .vimrcに以下の行を。 let loaded_matchparen=1
664 :
655 :2008/11/05(水) 23:39:04
>>663 できました。これで、だいぶ見やすくなりました。
ありがとうございました。
>>661 quickrunの主旨はVim内でちょっとしたスクリプトを書きつつ
その実行結果を別のウィンドウでチェックすることです。
なのでquickfixは使えませんよ。
:helptag $HOME/.vim/doc .vimにあるヘルプは読めるようになったんですけど 元のグローバルなヘルプを読もうとするとVimが凍り付いてしまい ます。^zも効かないので仕方無く仮想端末からkillしてます。 何が悪かったのでしょうか?
おつむが悪いんでしょうねぇ^^
すいません、ある拡張子のファイルを開いたとき、 自動的にC++のシンタックスハイライトが適用されるようにできますか? 自分でシンタックスファイルを作る、とかは出てくるんですが、 既存の色分けを他の拡張子にも適用させる方法が見つからなくて。(´Д`;
vimの色をRGB値で任意指定することって無理でしょうか?
普通のvimです。gvimじゃないと色設定はできないのですか? $ which vim /usr/bin/vim $ vim --version VIM - Vi IMproved 6.3 (2004 June 7, compiled Aug 10 2005 18:49:40)
>>669 C++の亜種っぽい言語のシンタックスファイルを自作したときにC++のシンタックスを流用したことがある。
そのときはWindows版のgVimで試したけど、
(Vim7インストールディレクトリ)/runtime/filetype.vim
を編集して
au BufNewFile,BufRead *.<<拡張子>> setf <<言語名(C++ね。多分cpp)>>
という一行を付け足したら自動的にシンタックスが適用されたと思う。
参考になればどうぞ
674 :
670 :2008/11/07(金) 18:22:51
調べたら、#ffffffでの色指定はgvim専用なんですね。諦めます
>>673 :setfiletypeだとfiletype pluginなどもC++のものが使われてしまう。
ハイライトだけなら:setlocal syntax=cppとすべき。
それとfiletype.vimはファイルの種類を判定・設定するために用いるものだから、
このケースでそれを編集するのは、効果的には間違ってはいないけど、良いとは言えない。
書くなら$MYVIMRCの方にすべき。
もしファイルの種類の判定・設定について独自のものを追加するとしても、
それは個人的なカスタマイズなのだから、$VIMRUNTIME下のファイルを編集すべきではない。
書くなら'runtimepath'中のいずれかのディレクトリ下のftdetect/{任意の名前}.vimにすべき。
:set listした時に全角スペースに色づけする方法は無いでしょうか? 制御記号表示の時は全角スペースに色が付き 非表示の時は色無しという風にしたいのです。
バッファの行追加/削除をスクリプトから検知するのは無理ですか?
$ vim プログラム 'vim' はまだインストールされていません。 次のように入力することでインストールできます: sudo ln -s /usr/bin/emacs /usr/local/bin/vim bash: vim: command not found
>>677 autocmd にファイルの変更はあるけどバッファの変更はねーな
>>676 'list'に応じて自動的に変えるのは無理。
'list'切り替え用のコマンドを作って、そこでハイライトの設定を変える方法はあるけど、
そのコマンド以外の手段で'list'を変更されたときに困るね。
>>677 BufferChangedのようなイベントはないし、Bramさんにリクエストしても追加されない可能性が高いと思う。
さっきちょっと試した範囲ではCursorMovedで代用できなくはない感じだったけど、
それではカバーしきれてないケースがあるかも知れない。
681 :
680 :2008/11/08(土) 15:29:26
>>677 追記: 変更があったかどうかはb:changedtickを利用すれば分かる。
682 :
677 :2008/11/08(土) 15:53:03
>>679-681 やっぱりバッファ監視用のイベントがないと難しいみたいですね
>>680 さんのCursorMoved+b:changedtickを使ってみましたが
当然のことながらddやpのような、カーソルが動かない変更には対応できませんね
もう少し考えてみます。どうもありがとうございました
:help todo | /BufChange/
684 :
名無しさん@お腹いっぱい。 :2008/11/08(土) 19:01:20
続けるにはENTERを押すかコマンドを入力して下さい。 これを出さないようにしたいのですけど、どうやればいいですか?
Vimを終了するには :quit<Enter> と入力してください は出なくていいと思う。 わざわざ出さないようにしたいとは思わないけど。
誰もがvim/vi経験者だと思ってはいけない
687 :
680 :2008/11/08(土) 21:51:30
>>682 いやいや、反応するよ。ちゃんと試してみて。
set cmdheight=2 とかにすればそれが出る回数が減るかもね
>>673 ,675
おお、そんな方法があったんですか。
どこかに登録するような気はしてたんですが。(´Д`;
filetype.vimだとよろしくないようなので、
~/_vimrcに
>>673 のを書いてみました。
一応自動判別しているようなので、これで行きたいと思います。
ありがとうございました〜。
左Altをメタキーにしたいのですが、設定の「Altでメタビットをたてる」にチェック入れても、メタキーが効いてくれません。 xevで確認すると keycode 64 (keysym 0xffe9, Alt_L) と出るので、メタキーになってないのだと思いますが、 どうやったらいいのでしょうか? ごった煮0.59です。
691 :
690 :2008/11/13(木) 21:58:10
すいません、「Altでメタビットをたてる」のチェックを外すとメタキーが使えました。何やってんだろう自分・・・ でもそうすると、このオプションは何のためにあるんでしょうか
スレチ。
VimでC言語書いてるけど、新規ファイルで毎回filetype=cって打つのが 面倒なんですけど、デフォルトでファイルタイプを指定する方法を教えてください
>>693 vim hoge.c
という感じにすれば勝手になってない?
>>694 勝手になるよねぇ。ウチもなるし。
>>693 が「なっていない」と判断した根拠を知りたい。
新規バッファを開いたときにプレーンテキスト扱いなのが気に入らないんじゃね
emacsのC-.のように、カッコを自動で判別して閉じてくれる機能はないでせうか。 <html> の次で C-. と打ったら </html> としてくれるような
>>695 そりゃ単にvim起動したからだと思うけどね。
メモ帳を起動して、編集して、名前を付けて保存という流れ。
>>697 closetagというプラグインがあったように思うよ。ちょっと曖昧だけど。
>>693 新規でバッファを開くっていうのがよく分からないが、単に:newとしているならば、それは無名バッファだから普通はファイルタイプが設定されない
そうではなく、:new hoge.c や :e hoge.c としてもファイルタイプが設定されないのならば、
ftplugin.vimが読み込まれていないのかもしれない
>>698 どうもありがとうございました。
<input 〜〜〜> の次にタグ閉じようとすると </input> とかするの以外はいい感じです。
>>700 XHTMLに準拠してくれてるんだなあと前向きに解釈してみるのはどうかな
普通に説明書に書いてあるが、こうやって使う :au Filetype html,xml,xsl source ~/.vim/scripts/closetag.vim
vimにおいてバッファとはどういう意味ですか?
タブブラウザにおける1枚1枚のタブみたいなものじゃないの
一概にバッファといってもヤンクバッファもあるわけで
>>693 .vimrc に
filetype plugin on
filetype plugin indent on
syntax on
とか書いてないんじゃ
Vim完全バイブル、絶版?
v i m完全バイブ
まあヘルプファイルがあれば要らないけどな
まあソースコードがあれば要らないけどな
まあバイナリがあれば要らないけどな
なんでemacsに負けたの?
714 :
名無しさん@お腹いっぱい。 :2008/11/21(金) 22:50:45
emacsって何?
いつ戦ったの?
emacsってなに?
それって食べれるの?
emacsさえあれば生きていけるという人がいるから ひょっとしたら食えるのかもしれん
人はemacsのみにて生きるものにあらず
挿入モードから抜けるときに(Escを押したとき)、IMを自動でオフにする方法を教えてください。
721 :
名無しさん@お腹いっぱい。 :2008/11/22(土) 01:36:53
>>720 UIMのVi協調モードを使う
俺はUIM嫌いだから使わないけど
試してみては?
どっちが勝ったかって言うとvimが勝ったんじゃね? ユーザーの数が圧勝でしょ。
でもスレの勢いはEmacsの方が上だよ
でもスレの勢いはPHPの方が上だよ
敗北宣言を確認
726 :
名無しさん@お腹いっぱい。 :2008/11/22(土) 13:17:59
emacsの勝利でいいじゃん ついでにWindowsの勝利とかMS Officeの勝利とか 騒いでくれてもいいよ。
ヴァ、Vimの勝利…(笑
ヴァ?
ベ、ベ、Vimって発音しにくい。 その点エマクソは発音簡単だからうらやましいです^^
vim7 on centos5.2なんですが vimをcuiで使うときっていうかvimならcuiなんですが ステータスバーを常時表示するにはどうしたらいいのでしょうか。 と伺おうかと思いましたがヘルプが教えてくれたのでお暇します。 ありがとうございました。 :set laststatus=2
またきてしかく
デフォルトのカレントディレクトリがVimフォルダなのですが これを変更する方法を教えてください
:cd :lcd
すいません、説明不足でした "デフォルト"のカレントディレクトリの変更する方法を教えていただきたいです
>>732 シェルからvimを起動すれば、今いる場所が普通にカレントになるはずだが……
Windowsで、スタートメニューか何かから起動してんのか?
なら、ショートカットのプロパティで「作業フォルダ」を書き換えればいい
737 :
:2008/11/27(木) 09:16:17
cindentでインデント量を設定するにはどうすればいいですか? :set cino=4 こうやってみたんですけど違うようでした。 ちなみにshiftwidth=8でts=4です。
738 :
:2008/11/27(木) 09:16:52
間違えました tsも8です。
>>737 やりたいのは基本的なインデントの量を変えたいんだろうけど、それは
:set softtabstop=4
:set shiftwidth=4
ね。'tabstop'は極力弄らないのが基本。
あと'cinoptions'はどうインデントするかについての細かい指定
(例えばswitch-caseのインデントはどういう風にするかなど)。
詳細は:help cinoptions-valuesに書かれてある。
740 :
名無しさん@お腹いっぱい。 :2008/11/27(木) 17:47:08
>>739 ありがとうございます
願いが叶いました
> ね。'tabstop'は極力弄らないのが基本。
>
> あと'cinoptions'はどうインデントするかについての細かい指定
> (例えばswitch-caseのインデントはどういう風にするかなど)。
> 詳細は:help cinoptions-valuesに書かれてある。
tsは8のままにしておくほうが良いのですね。
とても参考になりました
> 'tabstop'は極力弄らないのが基本。 そんなこたーない。 逆にstsなんて弄ったことないよ。
tabstopをいじらないのが基本というのが初耳なんだけど、なんで? ts=4 sts=2 sw=2 でレイアウトされたであろうソースコードも結構見かけるし。
伝統的に標準のタブ幅が8だから、じゃないの 端末にしろWebブラウザにしろそうだよな だから、ts=8以外のソースは、エディタ以外で表示すると表示がくずれる しかし、EmacsやVimのようなエディタが主流ではないWindowsでは、タブ幅4派がかなり 多いように思う インデントのためにタブを手で入力しているから、インデント幅=タブ幅のほうが 便利なんだろう Vimでインデント目的でタブキーを打ち込むことなどまず無いが
>743 >Vimでインデント目的でタブキーを打ち込むことなどまず無いが インデントは=か>>ってことですか?
>>744 うん、付け加えればCTRL-T, CTRL-Dも使う
基本は自動インデントに任せるからそれすら不要だけど
>> 745 CTRL-T/D知らんかった。。。 ついでに 単語を別単語で上書きしたいとき ywしてdw"0P してるんですがもっと少ないキーストロークないでしょうか。
>>743 エディタ以外で表示のこと考えたらset etだろ。
連投すまん。
>>746 yiw して viwp でだめか。
>>747 タブ開いちまうと、1行弄っただけでも既存のソースの全行を壊しちまうから嫌
Pythonのソースは問答無用でタブを開くようにしてるけど
>>748 おお〜。vは漢じゃないと思ってましたがすばらすい。
iなくてもいけますね〜
751 :
:2008/11/28(金) 15:02:43
お前ら楽しそうだな ところで何の話かね?
>>749 壊すというのは?
差分として出るのがうぜえという意味であればdiffのオプションで空白無視するとかで。
>>750 iの有無は好みなのでおまかせっす。
>>752 VCS上の都合。まあその辺は運用でどうとでもなるっちゃなるけど、
本来編集したつもりのない行のデータまで全部変更してしまうのは
俺には乱暴に思える。
まあ、プロジェクトの途中で全部を変えるなんてのは確かに乱暴だな
ハードウェア屋さんがいたか
756 :
名無しさん@お腹いっぱい。 :2008/11/30(日) 15:07:27
:e したら :tabe になるように cmap 出来ませんか ? cmap e tabe で失敗しました。
フォント設定し直してから、閉じて起動するとまた元のフォントにもどってるんだけど? 希望するフォントを記憶させるにはどうしたらいいの?
設定ファイルを用意して、そこにフォントの設定を書くといいんだZE guifontで検索するといいんだZE
>>756 :cab e tabe
じゃだめ?mapとは違うけど
760 :
756 :2008/11/30(日) 22:16:03
>>759 行けました。
:cab って始めて知りました。ありがとう。
vim版のhowm風味のスクリプトを作っていたのだけど既に存在していたのか。 2006年以降更新はないがもうメンテナンスはされていないのかな。 まだ本家とくらべて実装されていない機能があるようだけど。
>>762 根拠がよく分からないが、自分でスクリプトを作ろうと努力している人を馬鹿にしてはいけない。
765 :
名無しさん@お腹いっぱい。 :2008/12/03(水) 14:03:23
>>604 >>639 どうやら netrw.vim の問題みたい。
v123以前だと大丈夫でv128以降だと上記の症状が出る。
766 :
604 :2008/12/03(水) 17:49:28
>>765 スクリプト解析しようとして挫折中。
誰か本家(?)に報告してくれないかなぁ…(´・ω・`)
linux板の質問スレで華麗にスルーされてしまったのでこちらで質問させてください。 vim使ってるときに、複数行をコメントアウトする際、短形選択して、Iでインプットモードに入り、#なり//なりを入力してescを押しますが、 escの代わりにctrl+cを使おうと思ってます。 .vimrcに map! <C-C> <Esc> と書いたら望みどおりの動作はするのですが、どうももっさりです。 ctrl-cを押してから、1秒ほど経ってからコメントアウトされるのが嫌なのです。 職場の環境では、ctrl-cで即座にコメントアウトされる端末があるのですが、どこにその設定がしてあるのか分かりません。 .vimrcと/etr/profile.d/vim.shと/etc/vimrcは見たのですが、特にマップを設定しているところはありません。 というわけで以下の2点を質問させてください。 1.ctrl-cを押したら即座にコメントアウトさせるにはどうすればいいか 2.職場の環境で、他にどこを見たらvimの設定が分かるのか よろしくお願いします・・環境はfedora9です。
set ttimeoutlen=0
便乗して悪いけど。 <C-C>を<Esc>の代替にすると、どんな嬉しい事があるンすか。
押しやすいンじゃないかな
エレクチオンしてンな
>>768 うちの環境だとそれで駄目だったのですが、そのキーワードでぐぐったら noremap <C-C> <Esc> というのを見つけて、これで望みどおりの動作ができました。
ただ会社の環境はその値は-1で、こんなマップもしてなかったです。
>>769 ESCが遠いだけです・・ホームから指を離さざるを得なくて、使いづらいのです。
ありがとうございました。
C-[ 遠くてタイプできねえんじゃ、そもそもvim使えねえだろ…… ってマジレスしちゃったごめん
>>772 :echo mapcheck('<C-C>','i')
:verbose imap
vimをemacsと同じ操作方法にするにはどうすればいいのでしょうか?
emacsを使う
782 :
780 :2008/12/04(木) 15:59:56
>>781 firefoxやmonodevelopはemacs風キーバインドできるじゃないですか?
最強エディタといわれるvimも当然できると思ったのですが無理なようですね・・・
こんなこともできないなんて・・・言われたとおりemacsを使うことにします
783 :
名無しさん@お腹いっぱい。 :2008/12/04(木) 16:08:19
最強エディタはWindowsのメモ帳だろ
785 :
名無しさん@お腹いっぱい。 :2008/12/04(木) 17:39:36
emacsをvimのキーバインドで使えるの?
viしか使えない環境というのはままあるけど VimやIDEが使えるほどの環境ならEmacsくらい普通に使えるだろう
>最強エディタといわれるvim 誰が言ってるんだ。 vimはemacsのような新しい物に対応できないvi爺のためのエディタだし、 bashはcshのような新しい物に対応できないsh爺のためのシェルやど。
cshが「新しい物」って……w bashも糞だがcshは本物の糞だ
zsh最強
792 :
名無しさん@お腹いっぱい。 :2008/12/04(木) 22:26:08
エディタの「新しい物」て具体的になんですか vimしかつかってない爺だからわかんないんだけど emacsでできるすばらしいことなら大抵インポートされねーか
794 :
名無しさん@お腹いっぱい。 :2008/12/04(木) 23:29:14
爺はemacsというイメージだったんだが。
795 :
名無しさん@お腹いっぱい。 :2008/12/06(土) 09:25:35
vimで特定の行だけ非表示にすることって出来ますか? 折りたたみじゃなく完全に非表示にしたいのですが こんなテキストがあったとき 行番号 ↓ 1 |aaaaa 2 |bbbb 3 |cc ←非表示 4 |ddddddd ←非表示 5 |ee 6 |ff こういう風に表示したいのですが 1 |aaaaa 2 |bbbb 5 |ee 6 |ff
>>795 おっ。今回vimのページがずいぶん増えてるようす。
期待しちゃうね
>>1-798 お前らどうでもいいけど仕事しろよ
鉛筆でも使ってなさいってんだよw
>>796 折りたたみでできねーか
・展開しないようにする。'foldopen'に何も設定しない
・'foldtext'をいじる
801 :
:2008/12/07(日) 15:27:46
> 折りたたみじゃなく完全に非表示にしたいのですが
803 :
796 :2008/12/07(日) 22:30:27
完全に非表示にすることは無理ですか・・・・ 回答ありがとうございました。
いや、できん。 別にバッファを作って、そこにコードを書き出すなら、なんとか。 でも、同期の問題が
>>796 :split
:resize [行数]
で気分的にはできる
折りたたみ駄目なのか...
Chaliceでのあぼーんみたいに出来ない事は無いんじゃない?
>>795 手元にある入門vi第6版は英語版が1998年6月で日本語版の初版の日付が2002年5月
第7版が出るのは4年後だな
/で検索したり置き換えするときに、nowrapだと長い行でウィンドウからはみ出して見えないことがあるんですけど なんとかなりませんか? Vim7.2です
811 :
810 :2008/12/08(月) 21:37:32
sidescrolloffを設定すれば見えるようになりました どうもおさわがせしました。
812 :
名無しさん@お腹いっぱい。 :2008/12/12(金) 09:12:28
gvim 7.1だと、カーソルが コマンドモードのとき ■ 挿入モードのとき | と変わって非常にわかりやすいのですが、 同様の動作をvimで実現する方法はありますか?
Cをインタプリタ化するccod(
http://ccod.sourceforge.net/ )というパッケージがあって、
#!/usr/bin/ccod
<?
printf("hello world\n);
?>
という風に記述するんだけど、#!/usr/bin/ccodをコメント、
<?から?>を{}と同じ1ブロックとしてprintf();を自動でイン
デントさせたいのだけど、c.vimをどのように書けばいいのでしょうか?
>>813 真剣にやるとめんどくさそう
ダウンロードしたところ拡張子はcみたいだけどまず"c.vim"は利用しないほうがいい気がする
コメントのほうはシンタックスに追加するだけなので影響ないかもしらんが
インデントのほうは他の正規のC言語のインデントが破壊されるぞ
新しくファイルタイプをccodと作ったほうがいいんじゃないのかな
拡張子でなくシーバング読んでファイルタイプを変更するようにfiletype.vimも自前で作ったほうがいいと思う
>>812 vimはコンソール上で表示するんだから
|が表示できるわけないだろハゲ
817 :
812 :2008/12/13(土) 17:45:36
>>816 ありがとうございました。色々と勉強になりました。
sh
途中送信しちゃった shをindentする方法ないでしょうか?
820 :
substitute :2008/12/15(月) 20:43:58
:%s/hoeg/hoge/gc したときのカーソル部分の :hi はどのグループなのでしょうか ?
821 :
現行犯で逮捕だ! :2008/12/15(月) 21:32:06
IncSearch
俺も適当にハイライト変えて見てたけど、IncSearchは違うかと。 そもそもcオプションつけたことないからこういう状態になることを初めて知ったわ。
なんで? :help hl-IncSearch :help :s_c
>>822 はスルーしてください。間違えてました。
混乱させてごめんなさい。
秀丸使いをびびらせる技を教えてください!
普通に操作している画面を見せる
バッファを開いてから、もしくは最後に保存してから変更・追加があった行の 行番号を太字や背景色変更などで目立たせることはできますか? 可能であれば、検索キーワード等でも良いので教えてください。
ニコ動なんかでVim操作してるの見たいな
youtubeにemacs使いの鬼才がいるけどなw
RMSなにやってんのwww
スペイン語話してるのか。
意外と歌うめぇ
>>826 現在のバッファと保存済みファイルとdiffとるのならvimtip1030にある
スクリプトもあるはず
835 :
820 :2008/12/17(水) 19:44:21
821, 822, 823, 824 ありがとう
ファイルを複数開いて、1個でも開いたけど見てないファイルがある状態で :q すると E173: 2 more files to edit とお世話をしてくれますが、これを無効にする方法と、どう調べたら私が自分でこの答えを得られたか教えてもらえませんか?
:he E173 でエラーの説明が出る。 無効にする方法は知らないけれど、:q! とすることで強制的に終了は可能
上下左右の移動をhjklからjkl;に変えたいんですが、.vimrcの書き方がよく分かりません(特に「;」) エロ人教えてください
>>837 :q!で死ぬのは知ってたのですがタイプが増えるのが嫌で…
ありがとうございますた
>>838 noremap j h
noremap k j
noremap l k
noremap ; l
841 :
838 :2008/12/18(木) 19:51:15
>>840 ありがとうございます
ホームから手を離さずに
noremapだとコマンドモード、noremap!だと編集モードについての設定になるようですが、
編集モードにてCtrl+;で右へ移動する方法ってありますか?
色々調べて↓のようにもしてみましたが、Ctrl+;だけ機能してくれませんでした
noremap! <C-j> <Left>
noremap! <C-k> <Down>
noremap! <C-l> <Up>
noremap! <C-;> <Right>
本来の;の機能が使えないことに不満はないのだろうか。
843 :
838 :2008/12/18(木) 21:34:01
本来の;って何かありましたっけ?Ctrl+;押しても無反応でしたが ググると自分と同じ質問を見つけました。コンソールだとASCIIしか渡せないため、 Ctrl+;を認識させるのはそもそも無理のようですね というか→移動を;にすると予想以上に小指が疲る・・・ というわけで諦めます。お騒がせしました!
C-; じゃなくて、;ね。 直前のfなどの繰り返し。
845 :
838 :2008/12/18(木) 22:15:57
>>844 知りませんでした→;
便利すぎる・・・
これでますます
>>838 が有り得ない設定になりました
ありがとうございました
>>839 そんなあなたに、
:cmap q q!
挿入モードならAlt+hjklにすれば通常モードと同じになっていいんじゃないの?
なんか自分んとこ<A+ >や<M+ >のAltを使った設定できない。何でだろう? xevでAltキー打つとちゃんとAlt_Lって出るのに。
vi使いってオートマなんか糞だぜって言ってるMT車ヲタみたいだよねw
うるせーな。 年寄だから、ATなんて新しいものを操縦できないだけだよ。 ほっといてくれ。
オートマはくそだと思ってないよ。 ゴーカートは不便だろうなと思うぐらいで。
免許書にAT限定って書いてある俺に謝れw そういや教習所ではAT限定は女ばっかでした
2年くらいまえに免許とったけど男も女もATばっかりだった。 MT教習車自体が少なかった。
ハイブリッドとか電気自動車が主流になると MT自体が無意味になるな。
inoremap <silent> <ESC> <ESC>:set iminsert=0<CR>がうまく動かんなぁ ビープ音鳴りまくりでガチャガチャになる(意味不明の挙動をしたり、いきなり全文消えたり、、、?) ウッカリ切り忘れを防止したいだけなんだけど 何がいけないんだか
カーソルの位置はそのままに、画面を上限に移動する方法ってありますか?
ふと思ったんだけど noremapに加えてnoremappableなマッピングができたらいいのにね 行儀の悪いプラグイン中でmapされてたらと思うと、基本的なキーにマッピングする気にならない
map noremap に分けないで、デフォルトで再帰禁止にすればいいのにな 再帰したい場合は <silent> みたいに引数を用意する感じで
Vim完全バイブ
864 :
名無しさん@お腹いっぱい。 :2008/12/26(金) 22:03:30
gvimで左側に折りたたみの階層が分かるツリーみたいの表示できたよね?どうやったっけ?
866 :
864 :2008/12/27(土) 00:23:56
Vimスレにいる人の殆どが知っていると思います
vimgrepは結果を待つのでうっとうしいときがある win32では結果を待たずに編集に戻ることができ、 バッチファイルなどで他のgrepプログラムを利用した結果を 元のvim.exeのサーバーに対して戻すといった使い方も便利である 参考 :help 'win32-!start'
基本的な操作しかできないおいらにとって、このスレは宝の山(つД`)
870 :
名無しさん@お腹いっぱい。 :2008/12/27(土) 04:27:00
jvimでファイルを開いてるときに、手がすべってctrl+zを押してしまったことがあります。 ctrl+zは、CPUにリソースを渡さない状態(つまり眠っている状態)という認識なので、 killコマンドとかで何かシグナルを送れば目覚めるのではないのかと思うのですが、どうすればいいのでしょうか? ちなみに、kill -SIGCONTはだめでしたorz
fgコマンドを知らないの?
>>870 fg
っていうコマンドを使うと、
アプリケーションにもどれたりしないかな?
しまった、ものすごっい遅延重複レスしちまった
あー、もうターミナルを複数開くのが当たり前の世代は プロセス番号が、とか、fgで、とかイメージ湧かないんだろうなぁ Windowsでいえば「ウインドウが後ろに行っちゃって前のウインドウが邪魔で触れません」程度の話なんだが わけがわかんなくて苦労する気持ちはなんとなくわかる
C-zやらfgやらがvimに何の関係があるというんだ。
Windowsでgvim(KaoriYa版 7.1)を使っています。 ヘッダファイルのパスにスペースがあると、gfでジャンプできないようですが どうすればスペースがあってもジャンプできますか? "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include"にジャンプしたい ヘッダファイルがあり、_vimrcに以下のようにpathを設定しましたができませんでした。 set path+=\Program\ Files\Microsoft\ SDKs\Windows\v6.0A\Include
877 :
名無しさん@お腹いっぱい。 :2008/12/27(土) 10:54:28
お前等はESCAPE キーを「小指」と「人差し指」のどちらで押す? その利点は?
Escなんて押さないだろw
>>878 初心者なんだから、レスはなるべく控えてくれ。
>>876 :h path
set path+=\\Program\\\ Files\\Microsoft\\\ SDKs\Windows\\v6.0A\\Include
こんな感じになるんちゃう?
これでジャンプできるかどうかはやってないけど
さすがwindowsだなw バックスラッシュきもい。 Windowsでvim使ってる奴等、消えろよ。
>>874 間違って(意識しないで)C-sとか押して混乱することならたまにあります
フリーズしたように見えるので……
>>882 俺はWindowsなんて使用してないから消える必要がない。
>>877 左小指ctrl
右小指[
が普通かな
Escはあえて押すなら薬指
886 :
876 :2008/12/27(土) 13:00:21
>>880 レスありがとうございました。
試してみましたが、ジャンプしませんでした。読み込みが長くなったので何かはしているみたいです。
他の解決策として、スペースがない任意のディレクトリにシンボリックリンクの
ようなものを作成してジャンプすることができました。
(Windows Server 2003 Resource Kit Toolsのlinkd.exeというので作れました。)
887 :
名無しさん@お腹いっぱい。 :2008/12/27(土) 13:34:43
888 :
>>870 :2008/12/27(土) 14:46:54
> 初心者なんだから > 初心者なんだから > 初心者なんだから
UbuntuいれたらデフォがVim-Tinyだったが なんであれってvimコマンドのリンクにもなってるんだろう 機能無いんだから vi 扱いだけでいいのに
§,; ________§; , || §; / § ヽ || |~~~§~ §'~~~~~~~| / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | ____§/"""ヽ,§_____ | < すぐ連れ帰りますので・・ |__|///(§ §)ノ////|__|///\________ ⊆___)///ゝ___§ノ/////(____⊇//// ///////////////ジュ〜//////////// /////////////////////////////
パッケージ名がvim-tinyなのかもしれないが ふつーのvimを--with-features=tiny付きでコンパイルしたもので vimであることは間違いない
カーソルごと画面を上下移動することは可能? つまり、Ctrl+EやCtrl+Yでカーソル位置はターミナル上で静止して見えるような感じ
895 :
名無しさん@お腹いっぱい。 :2008/12/28(日) 05:50:00
人の環境でvi系使うと痛感するんだが ctrl+[はAの横にctrlが来るようにしてる人じゃないと有難みが薄い気がする
Ctrl-[はAの横にCtrlがあっても遠いから、別のキーマッピングを使っている人も多いんじゃないかな
ctrlもそうだけど、[の位置にもよる 英語キーボードならctrl+[ 日本語キーボードならEsc って感じで使ってる
HHK Pro以外はきついな
900!
[遠いかな 自分は日本語キーボードでもホームポジションから小指軽く広げるだけで届くから苦にならない
普通にcontrolとcaps lockキーを置き換えろよ。 そんなこともできんのかお前等は。
904 :
名無しさん@お腹いっぱい。 :2008/12/28(日) 16:44:19
普通のプログラムをctrl+zした場合って、kill -SIGCONTで復帰できるのに、 なぜ、vimはkill -SIGCONTで復帰しないの? vimの仕様?
なんでお前は fg %[1-9] とかやらないの? 知らないのか?
>>895 Ctrl+U,Dは半ページ移動じゃないっけ?
それはさすがにw 行単位で移動したいってことかなあ。 一応、:he scrolloff にあるような手法もあるよってことを書いておいてみる
ctrl-dとctrl-uの移動幅はscrollオプションで決まる :h CTRL-D :h CTRL-U :h 'scroll'
windowsのVim 7.2を使っています。 gvimを起動して最初に検索で / の後に入力しようとすると日本語入力になっているのですが、 最初からIMEがONにならないようにするにはどうすればよいでしょうか?
Windowsでvim使ってる奴等は消えろよ。
>>911 Windowsでお勧めのエディタがあれば教えてください。
>>912 Windowsでは無い。
そもそもバックスラッシュ(笑)でフォルダー(笑)を切ってる時点で無理。
>>913 ディレクトリ名にスペースを使わないでほしいとは思います。
日本語のディレクトリを作るなと思う.
俺はshellslashでいいや。 半端な知識でWindows否定するのは何かと恥をかくように思う。 もちろん、詳細を知った上での否定なら問題ないけど。
UNIX板でWindows版のうんたらかんたら
バックスラッシュの何がおもしろいんだろう? 円マーク()笑 とかじゃないんだもんね。
921 :
名無しさん@お腹いっぱい。 :2008/12/29(月) 17:50:21
バックスラッシュ自体が滑稽なんじゃなくて、 バックスラッシュをフォルダのセパレーターに使っちゃってるM$のセンスが滑稽なんだよ。
どう滑稽なんだ? MS-DOSの基本設計は80年前後。C言語があたり前になるより前だが?
>>922 > C言語があたり前になるより前だが?
C言語は70年代後半から着実に人気を獲得し、80年代初期には既にかなり有名になっていた。
UNIX風に普通に / を使用せず、プログラム内のコントロールキャラクターなどとの
混乱の可能性を無視して、 \ を採用してしまう辺り、当時のゲイツの必死さが伺える。
(もちろん、 \ 見栄えが / よりも悪いのは言うまでもないが。)
>>923 > C言語は70年代後半から着実に人気を獲得し、80年代初期には既にかなり有名になっていた。
Unixの世界でならね。
マイコンからやっと16ビットに這い上がったPCではまだまだ。
MSがバックスラッシュを選択したと思ってる無知がいるのはこのスレですか?
Macは:だっけか
>>925 おいおい。無知はお前ジャマイカ?
WikipediaでCP/M調べて100回音読してこい
あまりにしょぼい理由で俺は呆れたがwww
区切りにASCII文字を使うのはナンセンス
インド料理の秘訣はナンセンス
異議なーし!
インドのお香はインセンス
イノセンス
933 :
名無しさん@お腹いっぱい。 :2008/12/30(火) 09:43:31
FreeBSD 7.0でVim7.2.69を使っているのですが Linuxから移行してきたのでいくつか追加しなければいけない 設定が有るようで調べていたのですがどうしてもわからない物が 有ったのでよろしくおねがいします。 挿入モードの途中に入力した文字を消すのに手のどと着やすい所にある BackSpaceキーを使いたいのですがどのように設定すればいいのでしょうか? よろしくお願いします。
>>934 set backspace=2
多分これでいけます
>>935 残念ながらコマンドモードでは消す事ができましたが
挿入モードではバックスペースでは消せませんでしたデリートキーでは
消す事ができたのですが
>>936 それは端末の設定を変更する
stty erase なんちゃら
>>936 imap <BS> <C-h>
じゃあ多分これでいけます
C-hで消した方がもっと手もどと着^Hきやすくて楽だと思うけどね
どとく?
941 :
名無しさん@お腹いっぱい。 :2009/01/06(火) 21:06:39
sudo vi ってした時に vim が起動するのってどうすればいいんでしょうか><
sudo vim
>>941 普通に (一般ユーザで)
alias vi vim
じゃ、sudoした時にダメってことだよね?
自分のとこではOK (visudoで何も制限してない) なんだが、
visudoで何かそういう制限できたっけ。
sudoedit -u $USERNAME /etc/sudoers
945 :
名無しさん@お腹いっぱい。 :2009/01/07(水) 12:30:09
>>943 すみません間違えてました。
sudo vi としたら vim が起動してました。
ただ、version が 7.0.237 で、普通に vi だとインストールした
version 7.2.65 が起動します。
なんか自分の .zshrc とかに原因があると思います。もう少し調べてみます。
sudo.vimの方がお勧めだが
思い切ってcp /usr/bin/vim /bin/vi
せめてln -s
鳥によっては/bin/viが/usr/bin/vimのシンボリックリンクだったりする
>>945 rootは/usr/local/binみないよ
メジャーなLinuxディストロはsudoのパスを固定してる Fedoraだと/sbin:/bin:/usr/sbin:/usr/binで固定 Debianだと/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/binで固定
まあ、vimを起動したいならvimって打つのが筋だろ。
% alias % sudo alias 比べてみれば納得できるんじゃない?
% sudo alias sudo: alias: command not found なん・・・だと・・・
whichでどうだい
>>954 aliasは内部コマンドなので素の/bin/whichではでないだろう。
sudo bash -c alias
あたりではどうだい。
sudo viしてサスペンドしてpsとか
function! MyPrintf() echo "MyPrintf!" endfunction let g:.printf = function("MyPrintf") call printf()
fの要素が見あたらないが、それがそのうち実装されるのだろうか
にゃー
>>946-957 /bin/vi にシンボリックリンクを貼って
解決しましたー。みなさんありがとうございました><
>>958 うおーこれはすげートリックだ
これで小文字関数が書けるな
ちなみに標準関数の上書きもできるな
カーソルが単語の途中にあるとき、レジスタに単語ごとヤンクってできないんでしょうか? aw の a wordを"でヤンクしたいんですが・・・
vawy :h v_aw
yawとかyiwとか。 ところで、yawとyiwの違いって何? ya" yi"の違いは分かるんだけど。
テキストオブジェクトはaw と iw の単語を選択するwでは変わらないはず <foo> で va< と vi< "foo" で va" と vi" でためしてごらんさい
967 :
963 :2009/01/10(土) 00:42:27
皆様ありがとうございます ビジュアルモードでaw使えることを知りませんでした・・・ vaw"ny で名前付きレジスタへの格納もできました 修行が足りないようです こういうのを考えながらエディタ使うのが凄く楽しいです
vhhhlllly <-頭が疲れてきたらこうなる
"nyaw
viで脳内麻薬出まくり
最近Vimを使い始めた者なのですが、皆さんはキーバインドを変更していますか? EscとCtrlを変える人は多いみたいですが、他にもこうしたら便利だよーって 豆知識的な情報はありますでしょうか??取り留めの無い、雑談染みた質問で申し訳ないですが…。
>>971 わざわざありがとう、コレ見て
helpみたら分かった。
>>972 俺は人のマシンとか、新しいマシンで苦労するのいやだから基本的に「よほど苦痛でなければ変更しない」派
一度設定したものも、できるだけ標準に近づけるように心がけている
nnoremap 0 g0
nnoremap $ g$ はこの間やっと設定ファイルから消せた
nmap <silent> k gk
nmap <silent> j gj
は、、もうちょっとかかりそうだ
カーソル上の単語を大文字小文字変換ってできない?
~~~~~~~~
俺ならviw~
978 :
975 :2009/01/11(日) 09:16:58
やっぱそれか いや実は、何かの弾みで単語がいきなり大文字小文字変換されたように見えて 「もしかして専用の入力方法があるの?!」と思ってしまったもんで・・・ 単にviw~押しただけっぽいな(恥
単語なら思考コスト含めても n~ (nは文字数) でどうだろう。
2,3文字程度ならそれもいいかも
標準コマンドの置き換えなら :cab が使える 自分が使ってるのは :cnoreab <expr> ed IsAtCmdPos("ed") ? (&modified ? 'sp' : 'ed') : 'ed' で、カレントバッファが modified なら ed を sp に短縮展開、とか
選択したテキストを検索することってできますか? *とかで単語検索ができるのはわかるんですけど、日本語を検索するときとかうまくいかなくて。 ビジュアルモードで選択した部分を一発で検索!みたいなのが知りたいです。
>>982 vnoremap * "zy:let @/ = @z<CR>n
たぶんVimWikiで見た気がする。
>>983 ありがとうございます!できました!
これでvimライフがさらに快適になる。
おー便利
あはははは
>>983 なんだこれは・・・たまげた便利さだなぁ
sortと!sortってなんか違いあるんですか?
:help sort と :help ! の違いじゃないすか。