Vim Part20at UNIX
Vim Part20 - 暇つぶし2ch21:名無しさん@お腹いっぱい。
11/12/07 20:30:02.52
がんばって考えてみたところ、これでできた。
:let @* = @%

22:名無しさん@お腹いっぱい。
11/12/07 20:48:36.38
>>21
ありがとうございます。

23:名無しさん@お腹いっぱい。
11/12/08 10:07:32.31
パスじゃなくね?

24:名無しさん@お腹いっぱい。
11/12/08 12:44:18.98
なんなの?

25:名無しさん@お腹いっぱい。
11/12/08 13:22:39.32
ファイル名

26:名無しさん@お腹いっぱい。
11/12/08 16:22:54.90
「path」ってのは「通り道」。
当該ファイルにどうやって行きつくかを書いた「/hoge/fuga/moge/file.txt」ってのがパス。
/からどうやって行くかを書いたのが絶対パス。
現在地からどうやって行くかを書いたのが相対パス。

27:名無しさん@お腹いっぱい。
11/12/08 20:04:23.38
勉強になるなあ

28:名無しさん@お腹いっぱい。
11/12/09 00:08:21.11
Example.
パス(通る) + ポート(港)

>>27
中学からやり直せ

29:名無しさん@お腹いっぱい。
11/12/09 02:36:43.07
>>28
paTHportすげぇ。俺持ってねぇ。

30:名無しさん@お腹いっぱい。
11/12/09 04:33:07.73
通り道じゃなくて通るに変えているあたりに何かの意図を感じるんだけど、こういうことかな。

Example.
パス(通過) + ワード(単語)

>>27
中学からやり直せ

31:名無しさん@お腹いっぱい。
11/12/09 05:32:01.93
>>30
え?

32:名無しさん@お腹いっぱい。
11/12/09 05:33:40.88
あぁ、ごめん意図が分かった
passportね

33:名無しさん@お腹いっぱい。
11/12/09 07:34:27.35
オリンパスもね

34:名無しさん@お腹いっぱい。
11/12/09 08:22:52.26
サロンパスもね

35:名無しさん@お腹いっぱい。
11/12/09 10:26:24.24
ケムンパスもね

36:名無しさん@お腹いっぱい。
11/12/10 01:26:47.43
chalice
スレタイに <, > があると <, > のままになる

37:sage
11/12/10 03:53:37.84
void function(int a,int b){
}

void function(int a, int b){
}
というふうに、「,」のあとで空白を自動的に入れたいのですが
何か方法ありますか?


38:名無しさん@お腹いっぱい。
11/12/11 00:56:32.86
>>37
:map inoremap , ,<Space>

ただマッピングしまくると、コマンドヒストリで正規表現直接修正したり
いざコンマだけ入力したくなった時にイライラするハメになる。
自分の環境でしか通用しない変な癖は付けない方がいい。

:let mapleader = ","
inoremap <Leader>, ,<Space>

に設定すればコンマ2回素早く叩いた場合だけスペースを入力するようになる。
でもコンマとスペースを普通に続けて叩くのに比べて劇的な効果があるかは疑問。
よく使うからこそスペースキーはキーボードの特等席にでっかく陣取ってるわけで。

それならむしろコードを書いた後に直すべき箇所だけまるっと置換した方が健全だと思う。
:%s/,\ze[^ ]/, /g

39:38
11/12/11 00:58:58.27
:map inoremap , ,<Space>
じゃなくて
:inoremap , ,<Space>
だったわ。ごめん。

40:名無しさん@お腹いっぱい。
11/12/11 02:18:02.85
>>38
ありがとうございます。
段付け以外の複雑なコード整形は、外部プログラムに任せたほうがよさそうですね。

41:名無しさん@お腹いっぱい。
11/12/11 04:19:54.40
そういう時のためのsmartchr.vim

42:名無しさん@お腹いっぱい。
11/12/11 21:57:38.82
vimfilerに入った時だけ、spaceから始まるmapを全てなくしたいんだけど、(vimfilerではspaceで選択のため)どう書けばいい?

43:名無しさん@お腹いっぱい。
11/12/12 16:21:15.22
>>42

.vimrc内で、

nmap <Space> [Space]
nnoremap [Space] <Nop>

のようにしておき、<Space>としていたマッピングを[Space]に変更する。
そうすると、vimfilerは<Space> -> [Space]のマッピングを置き変えるので、
prefixと被ることはない。

44:名無しさん@お腹いっぱい。
11/12/12 18:30:45.07
sourceとruntimeはどう違うのですか?

45:名無しさん@お腹いっぱい。
11/12/12 18:59:02.13
>>43
ありがとー!!!!!

46:名無しさん@お腹いっぱい。
11/12/15 14:32:09.69
rootとvimrcを共用したいのですが
if $USER != 'root' && $SUDO_USER == ''
と分岐させると起動が0.3秒程遅くなってもたつきます。
共用してる人はどうやっているんですか?


47:名無しさん@お腹いっぱい。
11/12/15 19:23:54.87
$ ln -s $HOME/.vimrc /root/.vimrc
とかじゃないの。

48:名無しさん@お腹いっぱい。
11/12/16 23:23:22.00
j -> d のようにnnoremap リマップすると
jj で d↓ となって2行削除してしまいます
noremap すれば1行削除ですみますが

では この j(d) 入力後の j の扱いのみをdにするremap はどうするんですか?

49:名無しさん@お腹いっぱい。
11/12/16 23:26:26.60
gfを拡張して、環境変数(${ENV}など)を含んだパスに対しても、gfでジャンプできるように
したいですが、下記だとうまく行きません。
どうすればいいか教えてください。
ちなみに、mapを未定義のものにすればうまく行きます。。。。

function! GoFileWithEnv()
try
normal gf
" catch /^Vim:Interrupt$/
catch
let orgfilepath = expand("<cWORD>")
while (orgfilepath =~ "\\${.*}")
let env = matchstr(orgfilepath,"${.\\{-\\}}")
let expandedenv = expand(expand(env))
let orgfilepath = substitute(orgfilepath,env,expandedenv,"")
endwhile
exe "edit ".orgfilepath
endtry
endfunc

nnoremap gf :call GoFileWithEnv()<CR>


50:名無しさん@お腹いっぱい。
11/12/17 00:15:53.72
>>48
onoremapじゃないの
オペレータ保留モード でググるといいよ

51:名無しさん@お腹いっぱい。
11/12/17 17:49:42.40
いま try-catch とかあるのか

>>49
normal! gf
がいいよね

52:49
11/12/17 21:30:10.34
>>51
うわ!
normal!
ってやらないと、どうやってもmapされたコマンドが実行されるのね。
認識不足でした。map系のコマンドのhelpばっかり見ていました。
それで、会社に行ったときに試してみます!

53:名無しさん@お腹いっぱい。
11/12/18 14:43:17.67
>>41
私も、詳しくは無いが。sourceもruntimeも共にexコマンドを読むのは
同じ。唯、runtimeはruntimeパスから読む点が違う。
h source
h runtime
でヘルプを見れば良いのでは。


54:名無しさん@お腹いっぱい。
11/12/18 14:44:52.09
>>44
私も、詳しくは無いが。sourceもruntimeも共にexコマンドを読むのは
同じ。唯、runtimeはruntimeパスから読む点が違う。
h source
h runtime
でヘルプを見れば良いのでは。


55:名無しさん@お腹いっぱい。
11/12/20 17:28:48.08
スペース2個のインデントをバックスペースキー1回で消せる設定ってどうやるんですか?

56:名無しさん@お腹いっぱい。
11/12/20 17:32:17.00
>55
なんでそんなことがしたいの?

57:名無しさん@お腹いっぱい。
11/12/20 19:52:10.47
>>56
slim-vimというプラグインを入れて:set ft=slimしたらそういうふうになって便利だったので
RubyとかJSとかを書くときもそうできるようにしたいと思いました

58:名無しさん@お腹いっぱい。
11/12/20 19:52:47.59
じゃ、その slim-vim を調べろよw

59:名無しさん@お腹いっぱい。
11/12/20 20:50:37.40
>>55
setl sts=2 et

60:名無しさん@お腹いっぱい。
11/12/20 21:13:11.33
かぶるとこだった。

>>56
>>59をみれば何でそんなことがしたいかの動機はわかってもらえてると思いたい。

61:名無しさん@お腹いっぱい。
11/12/20 21:25:56.29
ノーマルモードのスペースとエンターが→と↓に割り当てられてるのはもったいないからリマップしたいんだけど何がオススメ?

62:名無しさん@お腹いっぱい。
11/12/20 21:36:20.95
ファイルタイプが html/markdown などのとき
選択中(visual)の Enter は、br 挿入
Shift + Enter は、br 削除にしている。

vnoremap <buffer> <cr> :s#$#<br />#<cr>:noh<cr>
vnoremap <buffer> <s-cr> :s#<br />##ge<cr>:noh<cr>

63:名無しさん@お腹いっぱい。
11/12/21 00:08:17.41
>>59
できました。ありがとうございます。すごく快適になりました。

ちなみに今まではこのような指定になってました。
set expandtab tabstop=2 shiftwidth=2 softtabstop=0

softtabstopを設定する必要があるんですね。
softtabstopが0の場合はtabstopの指定が反映されるから0にしとけばいいと、どっかで見て書いた覚えがあります。

64:名無しさん@お腹いっぱい。
11/12/23 23:12:43.96
.vim で K 押すと unix は man が起動されて win だと :help になるのって 'keywordprg' の default だったのか。.vim に限らずか。

65:名無しさん@お腹いっぱい。
11/12/23 23:17:54.43
そういえば Insert mode と Command-line mode には undo がないんだよね。あったっけ?
i は気にならないけど c はたまに欲しくなるな。

66:名無しさん@お腹いっぱい。
11/12/24 11:34:24.44
>>65
cmdwinを使えばできない事もない。

67:名無しさん@お腹いっぱい。
11/12/24 15:23:43.80
q:
って、どうやって表示させたかわからないまま閉じる日々をすごしていたよ

68:名無しさん@お腹いっぱい。
11/12/24 16:03:48.93
それは Command-line mode じゃあないからなあ。
結局 command-line window 内の Insert mode で同じ話になるし。
例えば補完時に補完前に戻すとかが面倒かな。

69:名無しさん@お腹いっぱい。
11/12/26 03:40:21.02
>>67
何でこんなに誤爆しやすいとこに置いたのか理解出来ない

70:名無しさん@お腹いっぱい。
11/12/26 12:55:52.25
fやtで移動するとき、行をまたがせる方法ってありますか?


71:名無しさん@お腹いっぱい。
11/12/26 13:16:42.06
>>70
whichwrapでできないから無理かも

72:名無しさん@お腹いっぱい。
11/12/27 07:39:42.08
>>70
*でやれば?

73:名無しさん@お腹いっぱい。
11/12/27 08:06:30.86
えっち

74:70
11/12/27 13:42:06.79
/で代用するのだとちょっと手順がもっさりして気になるんですよね


75:70
11/12/27 16:57:02.98
URLリンク(vim.wikia.com)
これをちょっといじったらうまくいきました
ありがとう


76:名無しさん@お腹いっぱい。
11/12/28 18:50:59.29
挿入モードのときに<C-t>を押すと、その行のインデントを加算することができるようですが、
同じようにインデントを減らすコマンドもありますか?

:imap <C-t>で探してもマッピングされていませんと言われます。どうやって調べればいいのでしょう。

77:名無しさん@お腹いっぱい。
11/12/28 19:19:11.56
そういうときは、
へるぷで、i_CTRL-tを検索するんだよ
だいたい、上か下に、探している項目があるだろう

78:名無しさん@お腹いっぱい。
11/12/29 21:19:15.02
>>76
:h index
でgrepすれば逆引きができる
:h help.txt
を見るとこういうものがあることが分かるようになってる


79:名無しさん@お腹いっぱい。
11/12/31 16:54:10.65
lispで-がiskeywordと見なされないんだけどなぜ?
確かに45が含まれてるしコマンドの方を特別いじってもいないんですが


80:名無しさん@お腹いっぱい。
12/01/01 00:43:55.77
iskeywordとみなされないとは*で検索したとき含まれないということ?

81:名無しさん@お腹いっぱい。
12/01/01 10:32:23.54
>>80
*みたいな単語単位のコマンドを使うときに-で区切ってくれないんです
:set iskeyword?
iskeyword=38,42,43,45,47-58,60-62,64-90,97-122,_


82:名無しさん@お腹いっぱい。
12/01/01 22:56:54.90
neocomplcacheにおいて &l:omnifunc が ClangComplete のとき、
neocomplcache#manual_omni_complete() を使用すると SEGVる。

neocomplcache#manual_omni_complete() から
omni_complete.vim の s:source.get_complete_words() 内で
call('ClangComplete', [0, '']) が呼ばれると
g:clang_use_library == 1 のとき ClangComplete() で dllが使用されるとSEGVる。
これは g:neocomplcache_enable_prefetch の値に関係なく起こる。
gdb
Program received signal SIGSEGV, Segmentation fault.
0x004197e3 in ins_compl_next (allow_get_expansion=0, count=1, insert_match=1)
at edit.c:4611
4611 else if (compl_shows_dir == BACKWARD

URLリンク(github.com) (d81ede0)
neocomplcacheで clang_completeを omni補完として使うパッチ
vim7.3.390 + Python 2.6.6 で動作確認。
URLリンク(skydrive.live.com)
clang_complete-clang2.9.patch clang2.9用。
native Windowsでのdllの名前は clang.dll である必要がある。
URLリンク(llvm.org) で動作確認。

clang_complete-clang3.0.patch clang3.0用。
native Windowsでのdllの名前は libclang.dll である必要がある。
URLリンク(llvm.org)
URLリンク(llvm.org)
URLリンク(llvm.org)
で動作確認。native Windowsは要自ビルド。

両方とも cygwin で使用する場合、dllの名前は cygclang.dll である必要がある。
cygwinは ocaml がインストールされていると失敗するので
configureに --enable-bindings=none を付ける。

83:名無しさん@お腹いっぱい。
12/01/01 22:57:49.18
取りあえずの解決策

function! s:keys_to_complete()
if &l:filetype ==# 'vim'
return "\<C-x>\<C-v>\<C-p>"
elseif strlen(&l:omnifunc)
if &l:omnifunc ==# 'ClangComplete'
\ && exists('*neocomplcache#manual_omni_complete')
\ && exists('g:neocomplcache_omni_patterns.' . &l:filetype)
\ && len('g:neocomplcache_omni_patterns.' . &l:filetype)
return neocomplcache#manual_omni_complete()
else
return "\<C-x>\<C-o>\<C-p>"
endif
else
if &l:completefunc =~# '^neocomplcache#'
return "\<C-x>\<C-u>\<C-p>"
else
return "\<C-n>"
endif
endif
endfunction

if s:has_autoload('eskk')
imap <expr> <C-j> !eskk#is_enabled() ? <SID>keys_to_complete() . "\<C-n>" : "\<C-j>"
else
imap <expr> <C-j> <SID>keys_to_complete() . "\<C-n>"
endif


84:名無しさん@お腹いっぱい。
12/01/01 23:17:30.69
× if &l:omnifunc ==# 'ClangComplete'
○ if &l:omnifunc !=# 'ClangComplete'

85:名無しさん@お腹いっぱい。
12/01/02 00:17:30.42
>>77-78
ありがとうございます。参考になりました。

86:名無しさん@お腹いっぱい。
12/01/03 12:28:02.72
:h termcap-cursor-color
によると、xtermではインサートモードのときカーソルの色を
変えられるらしい。うちのckではできなかった。残念。

87:名無しさん@お腹いっぱい。
12/01/03 19:30:29.90
昨日のVim Advent Calendarは欠番になっちゃったな。
正月だと難しいところもあるんだろうな。代打も出なかったようだし。
とにかくあと少しだから頑張ってくれ。

88:名無しさん@お腹いっぱい。
12/01/03 23:57:14.00
ええ?なんだかんだでここの人たちにも見てる人いるんだ

89:名無しさん@お腹いっぱい。
12/01/03 23:58:33.25
え、見るだろ?

90:名無しさん@お腹いっぱい。
12/01/04 08:19:58.42
うう。。。
新しいskk.vim、"skk_external_prog"周りが変更になってる。。。
辞書サーバからの応答が何故文字化けするのか全然分かんなかった。。。

91:名無しさん@お腹いっぱい。
12/01/04 18:30:33.98
Vim scriptスレさっそく落ちとるがな

92:名無しさん@お腹いっぱい。
12/01/06 01:34:23.64
eskk.vim導入して、インサートモードで<C-j>してエンターキー押したら
<80>yS(eskk:filter:
)
と挿入されて困っています。
neocomplcacheも導入済み。
だれか

93:名無しさん@お腹いっぱい。
12/01/06 07:19:14.11
skk.vimを使いなされ。

94:名無しさん@お腹いっぱい。
12/01/06 22:29:55.33
Windowsで
slimv.vim - Superior Lisp Interaction Mode for Vim ("SLIME for Vim")
URLリンク(www.vim.org)
これ試そうとして
Lisp Cabinet
URLリンク(lispcabinet.sourceforge.net)
をインストールしたら環境変数PATHが消えてしまったので注意しよう

95:名無しさん@お腹いっぱい。
12/01/08 22:15:15.30
すいません。
:!start $VIM . '/gvim.exe ' %
みたいなことをやりたいんですが$VIMが展開できません
:echo $VIM
との違いは何だろう?
ご教授願います

96:名無しさん@お腹いっぱい。
12/01/09 00:03:25.24
すいません。事故解決しました。
execute ":!start ". $VIM. "/gvim.exe %"


97:名無しさん@お腹いっぱい。
12/01/09 00:16:23.47
function! Restart()
try
"全て保存してあるとエラーを起こす。それを利用
bmodified
return
catch
" nop.
endtry
" :!start "C:\Program Files\vim73-kaoriya-msvc10_x64j\gvim.exe " %

execute ":!start ". $VIM. "/gvim.exe %"
execute 'qall'
endfunction

restart.vimのオプションで出来そう

98:名無しさん@お腹いっぱい。
12/01/09 00:22:25.64
vimでファイルを開くと、^Mが行末に表示されるファイルがあるのですが、
これは何なのでしょうか?
表示しないようにするには普通どうしますか?


99:名無しさん@お腹いっぱい。
12/01/09 01:11:00.90
^M^

100:名無しさん@お腹いっぱい。
12/01/09 01:39:43.36
>>98
改行コードが化けてるんじゃね
WindowsからUnix系に持ってきたファイルだったりしない?

101:名無しさん@お腹いっぱい。
12/01/09 02:18:53.30
というよりも、改行コードが混在してる場合にそれが起こる
CRLFとLFが混在してる場合に、改行コードはLFだと認識され、CRが可視化され、それが^Mとなる
表示しないようにするには普通改行コードを統一する

102:名無しさん@お腹いっぱい。
12/01/09 12:28:05.46
sed -e 's/\r//'

103:名無しさん@お腹いっぱい。
12/01/09 14:02:42.06
:%s/\\r// とか現場でやるもんじゃないの?w

104:名無しさん@お腹いっぱい。
12/01/09 16:33:20.47
全部手で消してる努力屋さんの素敵な子がいるんだけど

105:名無しさん@お腹いっぱい。
12/01/09 16:41:13.37
スクリプト書いて渡してやれ…

106:名無しさん@お腹いっぱい。
12/01/09 17:00:29.77
新人に勉強させるのは良い事だ
根をあげ始めたあたりで助け舟をだせ

107:名無しさん@お腹いっぱい。
12/01/09 20:46:29.08
>>106
定期的に^Mがまばらにある1000行くらいのファイルをきれいにする仕事を与えよう
そのうちいい方法を見つけるはずだ

108:名無しさん@お腹いっぱい。
12/01/10 03:26:26.63
カーソルの下の文字を取得するにはどうすればいいでしょうか。
getline(".")[col(".")-1]
までマニュアル読んで習得しましたが、日本語がうまく扱えません。

109:名無しさん@お腹いっぱい。
12/01/10 03:45:08.68
matchstr(getline("."), ".", col(".")-1)

110:名無しさん@お腹いっぱい。
12/01/10 04:13:49.75
>>109
できました。
あざっす!

111:名無しさん@お腹いっぱい。
12/01/15 14:00:45.89
マルチバッファで使ってるのですが、片方でhogeを含む行を
全部もう片方のバッファに移動(抽出)する方法はありますでしょうか。

いまは片方に全部移し変えて :g!/hoge/d するという原始的な方法でやってます…

112:名無しさん@お腹いっぱい。
12/01/15 17:37:12.56
Vimの険しい学習曲線をだいぶ登ってきますた
もっと色々身につけたいので、起動毎にTips表示するスクリプトでも入れようと思います
おすすめ教えてください

113:名無しさん@お腹いっぱい。
12/01/15 21:38:31.03
>>111
QuickFixListを使う方法
:grep hoge % | cwindow


使わない方法
:let @a=''
:g/hoge/normal "AY
:new
"ap

114:名無しさん@お腹いっぱい。
12/01/15 23:40:43.13
>>113
aレジスタを初期化する必要はないの?っていうか、マクロと同じレジスタ使うのは大丈夫なの?
やりもせずにすまん

115:名無しさん@お腹いっぱい。
12/01/16 11:34:44.47
>>114
113じゃないが、初期化は最初のletでやってるし、
マクロってのはそもそもレジスタ使うもの。

116:名無しさん@お腹いっぱい。
12/01/16 13:23:57.09
キャァ。見事に見間違えてました///

117:名無しさん@お腹いっぱい。
12/01/19 17:48:38.68
vimrc で 特定の文字列をセルフ定義レジスタにあらかじめ入れといて
起動直後に "aP でペーストしたいんですが無理でしょうか?

118:名無しさん@お腹いっぱい。
12/01/19 18:53:27.98
>>117
let @a='きんたま'

119:名無しさん@お腹いっぱい。
12/01/20 18:25:36.56
>>117
微妙に違うかもしれないけど、
let @a="foo"
new | put =@a
とすればできる。こうすれば起動時にペーストまでできるはず。

120:名無しさん@お腹いっぱい。
12/01/21 03:36:04.10
fuzzy finderのメニュー開いただけでウィンドウの高さが変わっちゃうんだけど、変えないようにする方法ってある?
ウィンドウは<C-W> sでsplitしてる

121:名無しさん@お腹いっぱい。
12/01/21 10:38:25.30
vim7.3.404より
URLリンク(groups.google.com)
src/edit.cの ins_compl_next()が compl_shown_match == NULL のとき
-1 を返すことによって >>82 の SEGVる問題は結果的に回避される。

動作確認
$ git clone URLリンク(github.com)
vimのソースの src/buffer.c を開く。
URLリンク(skydrive.live.com)
clang_complete-clang3.0-vim7.3.404-a065c40.patch
clang_complete-clang2.9-vim7.3.404-a065c40.patch
パッチを当てて
:imap <buffer> <C-j> <Plug>(clang_complete-manual-omni-complete)
:iunmap <c-x><c-o>
:iunmap <buffer> <c-x><c-o>

curbuf->| (|はカーソルの位置)
インサートモードにしてカーソルの位置で <c-x><c-o> すると補完候補が現れる。

だが、neocomplcacheの場合、
上記の位置で <c-j> すると補完候補が現れない。
curbuf->b| (|はカーソルの位置) は正常に補完される。
perlomni では Math::BigInt->| とかはきちんと補完される。

clang_complete 82d2e9f より
g:clang_auto_user_options の値に 'gcc' が含まれていると
b:clang_user_options が自動的に設定されるようになった。
その値はファイルとして保存される。値を変更するにはそのファイルを消さなければ
ならないので注意。上記のパッチを当てることにより、
:call getopts#gcc#getopts(1) とすることによって値を上書きするように変更。
$LC_MESSAGES が C 以外のときでも動作するように変更。

122:名無しさん@お腹いっぱい。
12/01/21 10:41:17.37
>>120
set noea

123:名無しさん@お腹いっぱい。
12/01/21 23:42:28.15
>>122
できた!ありがとう

124: 忍法帖【Lv=2,xxxP】
12/01/22 09:20:17.10
URLリンク(vim-users.jp)
で、コマンドラインウィンドウ使うようにしてたら%s/,/^M/g とかの改行置換が出来なくなってた
^c で下にやってから実行すれば出来るんだけど……
違いはなに?

125:名無しさん@お腹いっぱい。
12/01/22 15:54:19.77
>>124
?できますよ?
変わりに \r でも良いし

126:名無しさん@お腹いっぱい。
12/01/23 11:00:48.20
Kaoriyaのvim73-kaoriya-win64-20120121.zipをインストールしたけど、
$VIM/_vimrcに syntax=off を追加しても起動するとカラフルな画面になってしまいます。
シンタックス機能の抑制の方法、間違ってます?

(vimrcより後に読み込まれるファイルがあるとか何かあるのかな)

127:名無しさん@お腹いっぱい。
12/01/23 13:05:10.76
>>126

おそらく、
syntax off
と書かないとだめ。syntax=offというのは、ちょっと何をやっているのか分かりません。
そのまま書いたらエラーになるはず。

128:名無しさん@お腹いっぱい。
12/01/23 13:59:11.85
syntax off
でもやっぱりだめでした

ちなみに _vimrc(.vimrc)の中身全部はこれです。

set fencs=ucs-bom,iso-2022-jp,cp932,euc-jp,eucjp-ms
set clipboard=unnamed
set nois
set nohlsearch
set laststatus=0
syntax off
au BufEnter * execute ":lcd " . expand("%:p:h")

129:名無しさん@お腹いっぱい。
12/01/23 16:18:20.55
>>128
たしかkaoriya版のシンタックスはgvimrcで設定しないとダメだったはず。


130:名無しさん@お腹いっぱい。
12/01/23 16:35:16.31
>>126
> (vimrcより後に読み込まれるファイルがあるとか何かあるのかな)
:scriptnames

>>129
vimでも?

131:名無しさん@お腹いっぱい。
12/01/23 16:54:25.58
>>128
set syntax=off
でできませんか?

132:名無しさん@お腹いっぱい。
12/01/23 16:56:11.27
kaoriyaさんいわく(スパルタンvimにて)、HappyHackingKeyboard Type-S 英語版がおすすめみたいだけど、皆さんはどんなキーボードを使っていますか?

133:名無しさん@お腹いっぱい。
12/01/23 17:13:13.86
>>131です。
kaoriya版のvim7.3.99の32bitで試したところ、vimrcまたはgvimrcに
syntax off
と記述するとシンタックスハイライトされなくなりました。


134:名無しさん@お腹いっぱい。
12/01/23 18:57:20.31
>>132
Realforce89 をASCII配列にして使ってる。
無変換、変換キーを別途活用しているので、もともとASCII配列のキーボードだと逆に不便に。

135:名無しさん@お腹いっぱい。
12/01/23 19:49:56.74
自宅も職場もずーっとHHKProのUSだったけど、今は自宅ならAppleのワイヤレスUS一択
ちょっと設定弄る必要あるけど、これいいよ

136:名無しさん@お腹いっぱい。
12/01/23 20:26:27.21
hhkbjpです
usとjpを場合によって切り替えるなんて無理です

137:名無しさん@お腹いっぱい。
12/01/23 21:43:32.01
オリジナルの開発者の使ってたキーボードに近いのがベストなんだろうけど、昔の計算機は知らん。

リマップするならJISが大小兼ねるんで、いいのかね。

138:名無しさん@お腹いっぱい。
12/01/23 22:13:12.10
ノートに合わせてレノボのトラベルキーボード

139:名無しさん@お腹いっぱい。
12/01/23 22:34:06.76
128ですが、バージョン的な問題でしょうかね
現時点でダウンロードできるものは WIN32/WIN64の両方とも
set syntax=off, syntax off どちらでも色付きの画面が表示されます。
起動したあとで :set syntax=off または :syntax off どちらでも
モノクロ画面に戻ります。
まぁ バージョンだけの問題なら更新で直ると期待します。

140:名無しさん@お腹いっぱい。
12/01/23 22:44:17.72
:scriptnamesは試したんだろうか。
:verbose :set syntax?とかどうだろか。

141:名無しさん@お腹いっぱい。
12/01/23 23:04:52.32
URLリンク(www.nicovideo.jp)

142:名無しさん@お腹いっぱい。
12/01/23 23:10:02.83
あのさぁ・・・

143:名無しさん@お腹いっぱい。
12/01/24 01:45:48.07
今までjvim3とかnviしか使ってなくて感覚つかめませんでしたわ。

:scriptnames見て驚いたけど、
_vimrc(.vimrc)って 28個のファイル中11番目の実行になってて
ここで変数セットしても上書きされるな~って感じ。

VIMRUNTIMの下開いたら laststatus=0 が2に上書きされてる。

ユーザーの rc が最後に実行されないのって
こういう仕様なんだろうか。

144:名無しさん@お腹いっぱい。
12/01/24 01:47:50.31
macのキーボードってキーとキーが離れすぎていないか?
アレでまともにタイピング出来るもんなのか?

145:名無しさん@お腹いっぱい。
12/01/24 01:58:13.69
>>144
むしろ俺はあれで vi 覚えたぞ
タッチがちょっと浅いかなとは思うが
別にキーが離れてることに不便は感じないかと

146:名無しさん@お腹いっぱい。
12/01/24 03:28:26.85
>>143
ユーザのrcが読み込まれたことによって、読み込む必要が出てきたファイルではないのか

147:名無しさん@お腹いっぱい。
12/01/24 18:32:12.49
>>137
ADM-3A

148:名無しさん@お腹いっぱい。
12/01/25 12:30:07.50
nnoremap <C-o> :Unite -vertical -winwidth=30 -no-quit outline<CR>

Unite Outlineを縦分割で開くときに、右側に開きたいんですが
どのように指定すればできますか?

149:名無しさん@お腹いっぱい。
12/01/25 15:47:36.33
>>148
:help :botright

150:名無しさん@お腹いっぱい。
12/01/25 16:25:39.11
>>149
どうも

151:名無しさん@お腹いっぱい。
12/01/25 18:21:25.24
HHKがvi(emacsにしろ)に特別向いてるなんてことはないよwww

自由にしなはれ。

152:名無しさん@お腹いっぱい。
12/01/25 18:49:21.19
あえてviに向いているという部分を探すと、エスケープが近いことぐらいかな。
Ctrl+[ になれちゃえばそれもささいな話

153:名無しさん@お腹いっぱい。
12/01/25 19:18:36.06
確かに俺はHHK使ってるせいで^[がいつまで経っても身につかないわ

あとスパルタンVim読んでみた
前半はあえて極論を書いたネタ半分と受け取ったんだけどどうだろう?
後半の思い出話は超おもしろかった

154:名無しさん@お腹いっぱい。
12/01/25 19:29:16.39
おれCtrl-[すら遠く感じるのでCtrl-cになれちゃったんだけど。

155:名無しさん@お腹いっぱい。
12/01/25 20:04:16.19
>>152
単独のカーソルキーが付いてないのもviに向いてる(笑
もちろんLiteはHHKとは認めない

あとはまあ、修飾キーの位置が多分vi使いの好みに近いと思う
どうにでもなるけど、ハード的に最適化されてるに越したことはない

156:名無しさん@お腹いっぱい。
12/01/25 20:17:12.05
>>155
どうせ使わないから無い方が場所とらなくていいけど、
向いていることの理由にはならないと思って書かなかったよ。

157:名無しさん@お腹いっぱい。
12/01/25 23:06:58.94
カーソルが
print "hello, world"
の w にあるとき、hello world を消して
print ""
にするうまい手を教えてください

158:名無しさん@お腹いっぱい。
12/01/25 23:26:21.26
di"

159:名無しさん@お腹いっぱい。
12/01/25 23:27:16.81
もし、文字列を変更したいのなら
ci"

160:157
12/01/25 23:56:46.08
>>158-159
凄まじく便利です。ありがとうございました。

161:名無しさん@お腹いっぱい。
12/01/26 12:21:01.73
テキストオブジェクト知らなくて許されるのは小学生まで

162:名無しさん@お腹いっぱい。
12/01/26 16:45:31.32
定番だが、>>157はsurround.vimも導入すると世界が広がるはず

163:名無しさん@お腹いっぱい。
12/01/27 14:47:00.86
世界がひろがりんぐ

164:名無しさん@お腹いっぱい。
12/01/27 19:20:48.25
ソースコードの整形ルールを変えるにはどうしたら良いでしょうか?

165:名無しさん@お腹いっぱい。
12/01/27 19:47:41.06
1ファイルだけの話なら
ts sw sts et を好みに設定した後 gg=G

数スタイル用意して必要に応じて切り替えたいなら
URLリンク(vim-users.jp)

166:164
12/01/28 02:57:39.26
>>165
ありがとうございます。

私の質問の仕方が悪かったのですが、
端的な言葉で表現できるほどの語彙がない(orz)ので、具体例を示します。

現在、C++を書いていて、

template<class T>
T func( T val ){
return T;
}

を整形すると、

template<class T>
 T func( T val ){
  return val;
 }

となります。これを、

template<class T>
T func( val T )
{
 return T;
}

となるように、Vimの整形ルールを変更したいと思っています。
よろしくお願いいたします。

167:名無しさん@お腹いっぱい。
12/01/28 06:31:27.34
>>166
波括弧'{,}' の開始位置をそういうふうに変えるのはindent等の外部プログラムに頼るしかないと思います。
:help equalprg

それ以外のインデント量の微調整はVim本体のみで可能です。
:help cinoptions

168:名無しさん@お腹いっぱい。
12/01/28 07:30:30.65
整形で構文エラーを入れられたらVim嫌いになりそう

169:名無しさん@お腹いっぱい。
12/01/28 13:41:26.37
>>167
外部でもいいけど 'indentexpr' でもいいんじゃない?

170:名無しさん@お腹いっぱい。
12/01/28 18:25:52.82
>>169
そのオプションを適切に設定して
  T func( T val ){
の行で == したら
  T func( T val )
  {
にできるの??

171:名無しさん@お腹いっぱい。
12/01/28 20:25:29.60
set pathすると
path=.,/usr/include,,

とかになるんだけど
$PATH渡す方法ってどうすんの?

ちなみにzsh。


172:名無しさん@お腹いっぱい。
12/01/28 21:47:18.62
>>170
できないね。インデントの話かと思った。
まあ vim script でやってもいいんじゃないかと思うけど、そんなことはどうでもいいですね。はい。
つか = ってインデントコマンドかと思ってたらフォーマットコマンドだったんだな。

>>171
:se path=$PATH
これだと : が , にならないけど。
でも 'path' と $PATH は意味が違うと思う。

173:名無しさん@お腹いっぱい。
12/01/31 18:56:53.25
現在開いているファイルのファイル名を変更して保存した後、変更後のファイルを開く、
という動作は、:w 変更後.txt で保存させてから、:e 変更後.txt
って感じになるかと思うのですが、1コマンドで行うことって可能ですかね?

174:名無しさん@お腹いっぱい。
12/01/31 19:45:35.58
>>173
:file 変更後.txt

175:名無しさん@お腹いっぱい。
12/01/31 19:58:05.00
:saveas 変更後.txt

176:名無しさん@お腹いっぱい。
12/01/31 20:46:55.42
デジャヴ!?

177:名無しさん@お腹いっぱい。
12/02/01 10:52:13.23
>>174, 175 ありがとうございます。

178:名無しさん@お腹いっぱい。
12/02/02 19:55:38.45
文字列を分解してリストにするにはどうすればいいですか。
文字列にはマルチバイト文字も含まれています。

179:名無しさん@お腹いっぱい。
12/02/02 21:00:16.16
>>178
split( str, '\zs' )
で解決しました^^

180:名無しさん@お腹いっぱい。
12/02/04 13:35:42.33
「x」で削除した文字をキルリングに入れないようにする設定ってありますか?

181:名無しさん@お腹いっぱい。
12/02/04 14:51:50.27
キルリングってなんぞね
適当なレジスタに放り込んじゃえば?

182:名無しさん@お腹いっぱい。
12/02/04 15:10:41.90
>>180
つ ブラックホールレジスタ
:help "_

183:181
12/02/04 15:24:14.57
>>182
/dev/nullみたいなのがちゃんとあるんだと勉強になりました

184:180
12/02/04 17:50:56.99
>>182
:nnoremap x "_x
でできました。ありがとうございました。

185:名無しさん@お腹いっぱい。
12/02/06 23:30:03.86
ワームホールレジスタはどこだったかのう

186:名無しさん@お腹いっぱい。
12/02/07 12:29:13.25
ブラックホールに落ちた変数はイエローホールで脱出できる。
そのときvimは破壊されてしまうだろう。

187:名無しさん@お腹いっぱい。
12/02/08 12:58:56.42
もし回避方法があれば教えてください。
hiddenオプションはONにした状態で、
巨大なテキストファイル(大体数100Mbyte)を開くと、
最初当然時間はかかりますが、開いた後に、たとえば
別のファイルを開き、そのあと、また、元のファイルに戻ると
結構時間がかかります。この時間がかからなくすることは可能でしょうか?
例としては、下記の感じです
>vim
:e a.txt(数100Mbyteのファイル。当然読み込みに時間がかかる)
:e b.txt(小さなファイル。一瞬で読み込み終了)
:b1(もとの、a.txtを再度開きたい。このとき、最初のe a.txtほどではないが、
数十秒時間がかかるのを回避したい)

よろしくお願いします。

188:名無しさん@お腹いっぱい。
12/02/08 22:17:03.29
>>187
:sp

189:名無しさん@お腹いっぱい。
12/02/08 22:51:45.67
単純に100MBのファイル作って試してみても遅くはならないからシンタックスとかプラグインとかじゃないの。
vim -u NONE で設定等無効化しても遅い?

190:名無しさん@お腹いっぱい。
12/02/08 23:37:21.75
:sp
を使えば、遅くならないのはわかっているんですが、つい、
:b を使ってしまって、裏に移動したときに戻ってくるのが遅いなぁと。

今、自宅のwindowsで-u NONEで実行してみましたが、数秒かかりますね<復帰
ただ、会社のsolarisで実行すると、NFSのためか、数百MByteあると、
復帰に数十秒かかります。
そもそもバッファにあるんだから表示だけの問題じゃないのかなぁと
思うんですが。。。

:spをしておいて、currentをwindowを切り替えるのと、:b1とかでbufferを
表に出すので、どこが処理が変わるんでしょうかねぇ。。。
というわけで、もしわかれば教えてください。

191:名無しさん@お腹いっぱい。
12/02/09 03:01:05.35
スワップしてるとか。

192:名無しさん@お腹いっぱい。
12/02/10 10:43:15.28
邦訳はLearning the vi Editorの7thがないんですね。

悩むなあ。

193:名無しさん@お腹いっぱい。
12/02/10 17:02:23.77
原因がわかりました
foldmethodをmarker
にしていると、ファイルを
読み込んだ直後にmarkerを
探しに行くみたいです

下記で回避できそうです。
またもっといい案があれば
教えてください

au FileReadPre, FilterReadPre ,BufReadPre * set foldmethod=manual
au FileReadPost,FilterReadPost,BufReadPost * if line("$")<=100000 | set foldmethod=marker | endif

よろしくお願いします

194:名無しさん@お腹いっぱい。
12/02/11 08:00:08.27
>>193
手段を選ばないのであれば
:noautocmd edit hoge.txt
あと、
URLリンク(drchip.0sites.net)
これを好きなように改造して使うとか。

195:名無しさん@お腹いっぱい。
12/02/11 12:20:44.94
viにコピペするとき、先頭の文字が何文字か欠けてしまうんだけど何でなの?

version 7.3.390で、set pasteをしてる


196:名無しさん@お腹いっぱい。
12/02/11 12:34:49.49
モドち とか

197:195
12/02/11 13:53:18.16
自己解決、入力モードになっていなかった

198:名無しさん@お腹いっぱい。
12/02/11 15:21:11.94
ある行を yy でヤンクし、ビジュアルセレクトモードで複数行を選択した状態で
p で貼り付けるとレジスタがその選択したものに置き換わってしまうんですが
これを防ぐにはどうしたらいいですか?
>>184を真似て vnoremap p "_p とやってみましたが駄目でした


199:名無しさん@お腹いっぱい。
12/02/11 15:59:12.07
>>198
"0p とか試してみて!

200:198
12/02/11 17:01:41.21
>>199
ありがとうございます
残念ながら同じでした

201:名無しさん@お腹いっぱい。
12/02/11 18:40:02.13
>>198
vnoremap p "_xP

202:198
12/02/12 19:34:31.02
>>201
なるほどー!
xでビジュアルセレクト範囲を"_xへ捨ててから、Pすればいいわけですね。
ありがとうございました。

203:名無しさん@お腹いっぱい。
12/02/12 21:53:36.46
NERD_treeを使ってるときにFuzzyFinderでファイルを開くと、NERD_treeの右側のウインドウが小さくなってしまいますね。。
どなたか原因わかる方、またはNERD_treeとFuzzyFinderがうまく共存できてる方いらっしゃいますか?


204:名無しさん@お腹いっぱい。
12/02/13 10:21:44.00
colorschemeをsolarizedにしたらハマった
V2Cから何から全部これに合わせている
パッと見には印象が弱いが使っていると楽なことに気づく

205:名無しさん@お腹いっぱい。
12/02/13 11:43:06.23
質問です
いくつか行がある中から飛び飛びで切り取って違う所に貼りつけたいんですが良いやり方有りませんか?
例えば
hoge
fuga
hogehoge
fugafuga
のhogeとhogehogeだけ切り取ってfugafugaの下にまとめて貼りたいって感じです

206:名無しさん@お腹いっぱい。
12/02/13 12:30:21.95
vim windows UTF-8版を使っているのですが、やっぱりアラビア語で化けてしまいます。。
wikipedia編集したいのですけど、厳しいっすかねぇ。

207:名無しさん@お腹いっぱい。
12/02/13 12:37:32.77
>>205

末尾に移動
:g/hoge/move $

4行目に移動
:g/hoge/move 4

行頭 fugafuga にマッチする行へ移動
:g/hoge/move /^fugafuga/

208:名無しさん@お腹いっぱい。
12/02/13 12:47:52.50
>>207
返信ありがとうございます。
ちょっと例が悪かったかもしれません。c風で書くなら
main(){
hoge();
printf("hoge");
hogehoge();
printf("hogehoge");
}
hoge(){
}
hogehoge(){
}

main(){
hoge();
hogehoge();
}
hoge(){
printf("hoge");
}
hogehoge(){
printf("hogehoge");
}
みたいな感じなんですが

209:名無しさん@お腹いっぱい。
12/02/13 12:51:52.01
問題が変わった!

210:名無しさん@お腹いっぱい。
12/02/13 13:39:50.69
>>208
/prin
dd
p
dj
jp
j
dd
jp

211:名無しさん@お腹いっぱい。
12/02/13 17:30:47.07
やっぱりまとめてレジスタに入れて適宜入れていくのがよさそうですね
名前付きレジスタでやったりもしたんですがめんどくさすぎて

212:名無しさん@お腹いっぱい。
12/02/13 20:29:51.34
6時間たっても終わってないとか
はよやれw

213:名無しさん@お腹いっぱい。
12/02/13 23:50:28.17
>>208
デバッグ用っぽいね

行頭の printf を削除する
g/^printf/d

関数定義の直後に printf("関数名"); を挿入する。
%s/^\(\w\+\)(){/&\rprintf\("\1"\);\r/

214:名無しさん@お腹いっぱい。
12/02/14 00:12:19.70
>>213
> hoge();
> printf("hoge");
元がこうだから、入れるとしたらいくつあるかわからないreturnの直前だと思うよ。

215:名無しさん@お腹いっぱい。
12/02/14 01:52:53.13
フォント設定が全然昔からできないんだが、
set guifont=Takao_Gothic:h14
とかこういう感じでvimrcに書けば良いんだよね?

216:名無しさん@お腹いっぱい。
12/02/14 02:24:07.74
>>215
OSによって異なる。win,macなら
set guifont=Takaoゴシック:h14
linux(gtk+2)なら
set guifont=Takaoゴシック\ 14

フォント名はGUIに依存するらしいので、よく分からなければ
set guifont=*
で現れる選択ダイアログで選んだ後に
set guifont?
で出てくるフォント名や書式を参考にすればいい

詳細は
:he guifont

217:名無しさん@お腹いっぱい。
12/02/14 02:42:32.10
>>215
gvimrcに書くよ。

218:名無しさん@お腹いっぱい。
12/02/14 04:33:54.78
.vimrcではgvimに反映されないって、余計なお世話仕様だと思う。

219:215
12/02/14 10:39:40.41
>>216
できた。Windowsの方でできた。
なるほど、OSによって表記も異なるのね。WinとLinuxの両方記載しても問題ないんだな。

あとはLinuxの方も仕上げるだけだが、もう安心だ。ありがとう。
もちろんgvimrcの方に書く。

220:名無しさん@お腹いっぱい。
12/02/14 22:00:26.15
>>218
うん、されるよ?

221:名無しさん@お腹いっぱい。
12/02/14 22:26:51.99
>>204 いいね!

222:名無しさん@お腹いっぱい。
12/02/14 23:57:02.83
うちのへぼ液晶だとSolarizedは見づらかったな
低コントラストで目が疲れないのが売りだから当たり前か

223:名無しさん@お腹いっぱい。
12/02/15 01:46:28.74
さぃきん、おしっこするところの近くにもうぶ毛がはえてきました。・゜゜(>_<)゜゜・。
小5のときからまえのほうにははえてきたのですが
こんなとこにもはえてくるのですかぁ(∋_∈)
写メをのせるのでコメントぉくださぃ。。。(〃_ _)σ∥
スレリンク(math板)

224:名無しさん@お腹いっぱい。
12/02/16 15:59:23.73
3日前くらいからvimを使い始めた者ですが、
emacsで言うC-x r tに相当する機能はないですか?


225:名無しさん@お腹いっぱい。
12/02/16 16:08:30.47
矩形選択してShift+i

226:名無しさん@お腹いっぱい。
12/02/18 17:21:47.21
コメントアウトと解除を以下のようにしているんですが、

vmap ; :s/^/#/<CR>
vmap u :s/^#//<CR>

これを使うと検索のワードがそれぞれ ^ と ^# になってしまいます。
元のワードを維持するにはどうすればいいですか?

227:名無しさん@お腹いっぱい。
12/02/19 05:10:04.49
>>226
レジスタ @/ に直近の検索パターンが入ってるから、
vnoremap <silent> ; <Esc>:let sp = @/<Cr> <Bar> :s/^/#/<Cr> <Bar> :let @/ = sp<Cr>
とかかな。
EnhCommentify.vim やら NerdCommenter やら vim-commentary を使えば楽だと思うんだけど。

228:226
12/02/19 22:17:48.36
>>227
ありがとうございます。試してみましたが、残念ながら変わりませんでした。
コメントアウトはプラグインの機能を使うのがベターでしょうかね?

229:名無しさん@お腹いっぱい。
12/02/20 07:20:03.62
>>228
なんでだろ、、、手元ではいけたんだけど。

プラグイン使う方が楽かと。
もし、一個一個 mapping 書いてるなら、山ほど書かないといけないし。

NERDCommenter は、1言語内でコメント切り替え(HTML <-> JavaScript)できたり、コメントパターンも沢山。
vim-commentary は、commentstring をみてるだけ。

URLリンク(github.com)
URLリンク(github.com)

230:名無しさん@お腹いっぱい。
12/02/20 11:01:06.74
Vim で言語に関係なくコメントアウト行う - C++でゲームプログラミング
URLリンク(d.hatena.ne.jp)



231:230
12/02/20 11:03:14.14
[対応している言語]
abaqus abc acedb ada ahdl amiga aml ampl ant apache apachestyle asm68k asm asn
aspvbs atlas autohotkey autoit automake ave awk basic b bc bdf bib bindzone
bst btm caos catalog c cfg cg ch changelog cl clean clipper cmake conf config
context cpp crontab cs csc csp css cterm cupl csv cvs dcl debchangelog
debcontrol debsources def diff django docbk dns dosbatch dosini dot dracula
dsl dtd dtml dylan ecd eiffel elf elmfilt erlang eruby eterm expect exports
fetchmail fgl focexec form fortran foxpro fstab fvwm fx gdb gdmo geek
gentoo-package-keywords' gentoo-package-mask' gentoo-package-use' gnuplot
gtkrc haskell hb h help hercules hog html htmldjango htmlos ia64 icon idlang
idl indent inform inittab ishd iss ist jam java javascript jess jgraph
jproperties jproperties jsp kconfig kix kscript lace lex lftp lifelines lilo
lisp lite lotos lout lprolog lscript lss lua lynx m4 mail make maple masm
master matlab mel mf mib mma model moduala. modula2 modula3 monk mush muttrc
named nasm nastran natural ncf netdict netrw nqc nroff nsis objc ocaml occam
omlet omnimark openroad opl ora otl ox pascal passwd pcap pccts perl pfmain
php phtml pic pike pilrc pine plaintex plm plsql po postscr pov povini ppd
ppwiz procmail progress prolog psf ptcap python python qf radiance ratpoison r
rc readline rebol registry remind rexx robots rpl rtf ruby sa samba sas sass
sather scheme scilab screen scsh sdl sed selectbuf sgml sgmldecl sgmllnx sh
sicad simula sinda skill slang sl slrnrc sm smarty smil smith sml snnsnet
snnspat snnsres snobol4 spec specman spice sql sqlforms sqlj sqr squid st stp
strace svn systemverilog tads taglist tags tak tasm tcl terminfo tex text
plaintex texinfo texmf tf tidy tli trasys tsalt tsscl tssgm uc uil vb verilog
verilog_systemverilog vgrindefs vhdl vim viminfo virata vo_base vrml vsejcl
webmacro wget winbatch wml wvdial xdefaults xf86conf xhtml xkb xmath xml
xmodmap

232:名無しさん@お腹いっぱい。
12/02/20 17:28:21.48
Windowsのgvimで、他のウィンドウからマウスでgvimのウィンドウをアクティブにした時に
クリックした位置にカーソルを移動させない。

なんて設定って出来ますか?

普段はクリックした位置にカーソル移動していいんですけど、他のウィンドウからgvimへ
フォーカス移動した時だけは止めて欲しいという…わかります?

233:名無しさん@お腹いっぱい。
12/02/20 18:08:07.29
>>232
たぶん無理。
マウスを使わず Alt + Tab で。

234:名無しさん@お腹いっぱい。
12/02/20 22:38:00.67
>>232
MacVim だとそうならないからわからんけど、FocusGained でなんとかならん?

235:名無しさん@お腹いっぱい。
12/02/20 22:58:48.79
質問です。

aaa
bbb
ccc



aaa,bbb,ccc

というふうに、改行をカンマ区切りに変えるにはどうしたらいいでしょうか?


236:名無しさん@お腹いっぱい。
12/02/20 23:14:50.75
>>235
"\n"を","に置換するだけ
激しく簡単である

:%s/\n/,/

237:>>235
12/02/22 00:08:35.67
>>236
できませんでした。

ちなみに、jvimというのを使っているのですが、vimとは違うのでしょうか?
OSはFreeBSDです。


238:名無しさん@お腹いっぱい。
12/02/22 02:03:02.76
行末にカンマつけて行結合すれば?

239:名無しさん@お腹いっぱい。
12/02/22 02:19:40.45
>>237
詳しくないけど、jVim てVim 5 相当だったかな。
最新の Vim 7.3 とはかなり違うと思うけど、:%s/\n/,/ も動かないのはよくわからん。

じゃあ、
:%s/$/,/
:%join!
ではどうだ

240:名無しさん@お腹いっぱい。
12/02/22 04:46:29.97
:[range]!tr \\n ,

241:名無しさん@お腹いっぱい。
12/02/22 07:42:45.82
>>240の伝統芸を支持。

242:名無しさん@お腹いっぱい。
12/02/22 08:07:56.41
gvimを初めて使ってみたんだけど
:marksなんかが複数行出力するときに
もたもた出てくるのをなんとかする方法ってありませんか?

243:239
12/02/22 11:16:16.06
FreeBSDだもんな。*nix なら、 >>240 がシブいな
もう、このネタいいと思うけどもう一個

ggqaA,<Esc>gJ100@a$x

244:名無しさん@お腹いっぱい。
12/02/22 11:21:40.78
>>242
-- More -- のことなら、 :set nomore で

245: 忍法帖【Lv=6,xxxP】
12/02/22 12:25:31.53
>>243
マクロとめてなくね?

246:名無しさん@お腹いっぱい。
12/02/22 13:55:28.33
qaJr,q100@a

@aが空っぽ(:let@a='')だったら
qaJr,@aq@a
でOK

247:246
12/02/22 13:56:23.89
最初のgg忘れてた

248:243
12/02/23 02:09:37.71
>>245
ほんまや。。。

249:242
12/02/23 05:49:44.97
>>244
レスありがとうございます
要領を得なくて申し訳ないんですが、:marksとか:registersなんかがまるで
:echo "hoge" | sleep n | echo "fuga" | sleep n |...
ってやってるんじゃないかと思えるほど
見た目にはっきり逐次出力されるじゃないですか。
端末上みたいにぱっと出させたいんです。

250:名無しさん@お腹いっぱい。
12/02/23 15:24:59.00
>>249
うちはズバーン!ってでるよ

251:243
12/02/23 21:51:32.98
>>249
うちもイッキ出しだ。
なんかのオプションて関係あるんだろか。
すまん。ちょっとわからん

252: 忍法帖【Lv=7,xxxP】
12/02/23 22:01:08.08
>>246
マクロって再帰できんの?

253:名無しさん@お腹いっぱい。
12/02/23 22:13:17.62
できるよ

254:名無しさん@お腹いっぱい。
12/02/28 08:08:17.18
Vimって、半角に英字フォントを使いつつ、半角カナを日本語フォントで
表示させるのって無理ですか?

255:名無しさん@お腹いっぱい。
12/02/28 08:38:48.86
半角カナ入り英字フォントってあるの

256:名無しさん@お腹いっぱい。
12/02/28 11:58:40.45
>>254
フォントを合成するとか。

257:名無しさん@お腹いっぱい。
12/03/02 07:15:14.12
:vert diffsplit とか、この前知って感動したんですが、うちのUbuntu 10.04LTS上だと
E319: Sorry, the command is not available in this version ですた。

そういうもんなの?

258:名無しさん@お腹いっぱい。
12/03/02 07:26:43.40
>>257
:ver の結果を確認
-vertsplit か -diff になってるとかでは?
vim-tiny だったらそうかもしらん。
vim-nox やら vim-gnome とかを入れたら使えるんじゃないかね

259:名無しさん@お腹いっぱい。
12/03/02 23:49:29.94
>>254
gvim だよね?
guifontwide は名前通り全角のみなのか。
guifontset でできんかね?
まあ >>256 でできるとは思うが。

260:名無しさん@お腹いっぱい。
12/03/03 12:47:09.99
>>258
-vertsplit ですた。
vim-nox 入れたら使えるようになったよ。ありがとですわ!

261:242
12/03/04 10:10:21.99
>>250>>251
アク禁くらってた。
余所の環境で試す機会があったらまた思い出す事にします
感謝

262:名無しさん@お腹いっぱい。
12/03/07 00:06:50.17
インサートモードで<C-r>=とか<C-r>/とかのコマンドについて
調べたいんですが何て言葉でググればいいんですか?

263:名無しさん@お腹いっぱい。
12/03/07 00:07:42.15
:help i_CTRL-R
でどうや?

264:名無しさん@お腹いっぱい。
12/03/07 00:19:58.51
>>263
見つかりました。ありがとうございます。
そういえば、前にも>>76-77で同じような質問してた…

265:名無しさん@お腹いっぱい。
12/03/07 00:22:24.16
お前だったのか

266:名無しさん@お腹いっぱい。
12/03/07 01:00:43.96
>>262
viにモードはないんだが。

267:名無しさん@お腹いっぱい。
12/03/07 02:39:43.88
といいますと?

268: 忍法帖【Lv=13,xxxPT】
12/03/07 04:20:25.99
てす

269:名無しさん@お腹いっぱい。
12/03/08 10:06:18.12
全角・半角を区切りとして補完を行うことってできないですかね?

例えば
「テキストエディタのvimは」
というテキストがあるとき、
「テキ」を入力してキーを押すと「テキストエディタの」までを補完してくれるというような感じ。

現状だとカタカナ・ひらがな・漢字で区切られてしまい「テキストエディタ」までしか補完してくれないので。

270:名無しさん@お腹いっぱい。
12/03/08 16:20:51.99
UbuntuのGVimでプロポーショナルフォントを使う方法は何かないですか?

271:名無しさん@お腹いっぱい。
12/03/08 18:36:13.62
ありま千円

272:名無しさん@お腹いっぱい。
12/03/12 10:07:04.49
neocomplcacheを git pullしたら perlomni.vim, Gauche-Completeが使えなくなった
ので取りあえずの修正。

URLリンク(skydrive.live.com)
neocomplcache-2e6d6e6-get_cur_text.patch

Gauche-Complete
URLリンク(github.com)
native windowsで cygwinの goshを使えるようにするパッチ
Gauche-Complete-8709e4b.patch

native windowsでは必要ならば $MYVIMRCに
autoload/neocomplcache/sources/gosh_complete.vim が読み込まれるより前に
if has('vim_starting') && s:is_win
"let $PATH = 'C:/cygwin-1.7/usr/local/bin;' . $PATH
"let g:neocomplcache_gosh_program = 'c:/cygwin-1.7/usr/local/bin/gosh.exe'
let $GAUCHE_LOAD_PATH = '.;./lib;./src;~/local/share/gauche/site/lib;/usr/local/share/gauche-0.9/0.9.2/lib'
endif


なぜかcygwin版のvimではエラーが出て使えない。原因が解らないので放置
function neocomplcache#enable..335..353..<SNR>280_caching
..neocomplcache#get_context_filetype..<SNR>268_set_context_filetype
..364..<SNR>284_load_default_module..<SNR>284_add_async_task
..<SNR>19_write_pipes..<SNR>19_write..<SNR>19_vp_pipe_write
..<SNR>19_libcall の処理中にエラーが検出されました:
行 11:
E605: 例外が捕捉されませんでした: proc: vp_pipe_write: ['poll() error: Interrupted system call']

273:名無しさん@お腹いっぱい。
12/03/12 20:59:33.60
macのターミナルでvimを使っていますが、カーソルの移動速度を早くすることができますか?

274:名無しさん@お腹いっぱい。
12/03/12 21:17:39.67
>>273
System Preference の Key Repeat が最高速になってないとかじゃなくて?

275:名無しさん@お腹いっぱい。
12/03/12 21:30:30.79
>>273
つ[シュウォッチ]

276:名無しさん@お腹いっぱい。
12/03/12 22:06:36.93
>>270
公式にはない。
なんかやってる人居たような、居ないような


277: 忍法帖【Lv=2,xxxP】
12/03/12 22:25:12.45
>>274
横からだけど、キーリピートってそういう意味だったのね。
帰ったら最速にするわサンクス

278:名無しさん@お腹いっぱい。
12/03/13 20:54:54.88
>>274
おぉ!!

279:名無しさん@お腹いっぱい。
12/03/15 06:44:20.31
ビジュアルモードで選択した複数行の先頭に4個の半角スペースを一括で挿入したい
のですが、簡単に出来るコマンドは無いでしょうか?

調べても意外に方法が無くて困っています。
Alignというプラグインで出来そうだったのですがこれでも無理でした。

280:名無しさん@お腹いっぱい。
12/03/15 07:25:27.45
>>279
C-v で先頭選択してIで挿入モードにしてスペース4個入れてEsc

281:名無しさん@お腹いっぱい。
12/03/15 07:30:14.66
>>279
280とは別の解。
あらかじめ :set et sw=4 としておいて、V で複数行選んで > を押す。

282:名無しさん@お腹いっぱい。
12/03/15 07:59:46.55
>>279
さらに別解。
V で複数行選んで : を押す。
コマンドラインに
:'<,'>
と表示されるので、続けて s/^/ / と入力してリターンキーを押す。


283:名無しさん@お腹いっぱい。
12/03/15 17:00:45.72
>>279
「vim 矩形」でググるといいよ。
C-V(矩形選択)してI, A, o, Oあたりをセットで覚えておくと吉。

284:名無しさん@お腹いっぱい。
12/03/15 17:12:29.47
バッファ間の移動にキーを割り当てたいのですが(もしかしたらデフォルトである?)
どのキーが割り当てられてないか調べる方法ってありませんか?

285:名無しさん@お腹いっぱい。
12/03/15 17:53:18.25
>>284
デフォルトは、<c-w>j, h, k, l
マッピング一覧の出力は、 :map, :nmap :imap など

:nmap キー で
マッピングされてたらその定義、されていなければ No mapping found になる。
<C-w>j とか gt とかデフォルトで定義されてるのは出てこないので注意。
オレは、sj, sk, sh, sl にそれぞれ割り当ててる

286:名無しさん@お腹いっぱい。
12/03/15 17:57:23.51
>>284
あ、バッファ間の移動か。
すまん。じゃ違う。
バッファの切り替えは、:bnext, :bprevious で、次/前の切り替え
あとは、:ls してバッファ番号を調べて、:b バッファ番号
その辺楽にできるプラグインも色々あるので、要チェック


287:279
12/03/15 18:16:57.43
遅くなりましてすいません。
レスくれた方ありがとうございました。
一通り試してみましたが、>>280さんのやり方がすごく簡単で分かりやすかったのでこれでいきます。
繰り返しこの作業を行う必要があって、毎回手動でやってたので助かりました。

288:名無しさん
12/03/15 22:00:40.03
国体

289:名無しさん@お腹いっぱい。
12/03/15 22:31:56.12
>>279
もういいと思うけど一応。
オートインデントがきくプログラム言語なら、
V=
でも大抵おk。
>>287みると、ソースコードじゃないぽいけど

290:名無しさん@お腹いっぱい。
12/03/15 22:41:48.23
>>284
[n]ctrl-^

[n]はバッファ番号
これを入力しない時は最後に切替えたバッファ間を行き来する

291:名無しさん@お腹いっぱい。
12/03/16 07:37:40.17
Big Sky :: vimrcのどこが重いのかを調べられるプラグイン書いた。
URLリンク(mattn.kaoriya.net)



292:名無しさん@お腹いっぱい。
12/03/16 10:19:14.52
毎度宣伝ウザいなこいつ

293:名無しさん@お腹いっぱい。
12/03/16 10:29:40.68
スマホアプリのVim検定が微妙すぎる…
ただの四択の上に問題数がやたら少なく、しかもその問題がクソ
AppStoreに金返せって書き込む人の気持ちが初めて分かったかも…書かないけどさ
せめて問題数は増やして欲しい

294:名無しさん@お腹いっぱい。
12/03/16 13:12:27.85
たかがクイズアプリ如きが350円はねーわ。

295:名無しさん@お腹いっぱい。
12/03/16 13:27:48.53
詐欺アプリは買う奴がアホとしか言いようがない。
俺もスマホ使い始めた頃は中身空っぽのアダルトアプリに騙されたが。

296:名無しさん@お腹いっぱい。
12/03/17 19:04:39.62
txtファイルを編集しようとするとネオコンの補完候補が全て小文字になる
fooBarがfoobarとなって補完候補に表示される
cppは平気でした

vimrcになんて書けばいいんでしょうか?

synが怪しいと思ってこんなことかいてみたけどだめでした
if &ft == ""
set syntax=cpp
syn case match
endif

297:名無しさん@お腹いっぱい。
12/03/17 19:18:43.78
ネオコン使うのやめろって答えは駄目なのかな?
そういう包括的なプラグインに管理されると身動き取れなくなるよ

298:名無しさん@お腹いっぱい。
12/03/17 19:36:42.09
身動き取れなくなると言ってる意味を誰か俺にわかりやすく

299:名無しさん@お腹いっぱい。
12/03/17 19:39:14.89
>>297
わかる。学習コストを最低限にしたい。
でも、変数名の記憶があいまいだったり、長かったりするとき便利なんだよ

300:名無しさん@お腹いっぱい。
12/03/17 20:14:53.12
ちょっと動作が気に入らないところがあっても我慢するしかないってのはあるな。
軽いプラグインを組み合わせて使う場合はいくらでもカスタマイズ出来るけど。
身動き取れないてのはそんな感じかな?
あとはプラグイン入れる度にネオコン意識しないといけなかったり
相性の悪いプラグインを使えなかったり、海外のトレンドについていけなかったり。
ガラパゴスのように日本だけ違う方向に発展してるからね。

301:名無しさん@お腹いっぱい。
12/03/17 20:36:42.40
全然関係ないけど長門はemacsじゃなくてvim使ってそう

302:名無しさん@お腹いっぱい。
12/03/17 21:14:58.42
!!

303:名無しさん@お腹いっぱい。
12/03/17 21:27:59.08
みくるのおっぱいが好きな俺に隙はなかった

304:名無しさん@お腹いっぱい。
12/03/17 22:22:08.10
教室で涼宮ハルヒの憂鬱(初版、流行る前からもってた)を読んでたら
「なぁ、それハルヒじゃね?」と後ろの席のやつにいわれた。
ちょっと怖い煙草とかすってるやつだったから
「うん、ハルヒ。それの一巻」って説明したら
「○○って長門に似てるよな」とクラスの女子のことを指さした。
大人しくていつも読書している小柄で可愛いこだった。
たしかにそっくりだったし、長門にも彼女にも好意を抱いていたので
最高の笑顔で「うん」と賛同したところ
おもむろに携帯で○○さんのハメ撮りを見せてくれました。

誰かハルヒのいる世界に連れて行ってください

305:名無しさん@お腹いっぱい。
12/03/17 22:47:20.60
:qa!

306:名無しさん@お腹いっぱい。
12/03/17 23:15:40.99
オタはどこにでも湧いてるな。
アニオタ、鉄オタ、AKBオタ、etc...よそでやれよ、本当につまらないからさ。
Vimの話題だけ持ってこい馬鹿ども。

307:名無しさん@お腹いっぱい。
12/03/17 23:17:44.51
Vimヲタきめえ

308:名無しさん@お腹いっぱい。
12/03/17 23:18:37.14
じゃあVimが出てきた映像作品でも挙げていこうか

309:名無しさん@お腹いっぱい。
12/03/17 23:34:14.46
みんな、なんでVim使い始めたん?

310:名無しさん@お腹いっぱい。
12/03/17 23:42:38.41
NetHack

311:名無しさん@お腹いっぱい。
12/03/17 23:51:14.20
ブラッディ・マンデイのせいで一時期変なのが湧いたよなぁ

312:名無しさん@お腹いっぱい。
12/03/18 00:19:27.63
>>309
それしか無かったから。Emacsを使うには重すぎる環境だったから。

313:名無しさん@お腹いっぱい。
12/03/18 00:29:46.03
>>309
Xが無い環境に触れる機会があって以来の付き合い

314:名無しさん@お腹いっぱい。
12/03/18 01:02:35.89
>>309
vi使えないとサーバ運営に支障があると本に書いてあったから

315:名無しさん@お腹いっぱい。
12/03/18 05:09:04.17
>>309
自己レスだけど、とっかかりは強力な正規表現。
初めて使った時は、ナニこのクソエディタておもた。

316:名無しさん@お腹いっぱい。
12/03/18 07:50:10.35
Solaris1のころから …はviだった
使い方が変な割にはカーソル移動がバカにスムーズだと思い次第に慣れる

317:名無しさん@お腹いっぱい。
12/03/18 13:22:17.77
多くのシステム管理者が Vim を高く評価しているが、それは Vim が SSH 経由の端末による接続で、
Linux や Mac OS X のシステムを実用的に遠隔操作できる効率的なテキスト編集環境だからだ。

私は Vim を1998年から使っている。デスクトップのメイン OS を Linux にした翌年からだ。
そして、私は Vim でたくさんの記事やコードを書いてきた。

数多くの現代的なテキストエディタを体験してきたが、
Vim の効率の良さに匹敵するものはついぞ見つからなかった。
このエディタを毎日のように使い続けて数年が経ったが、私はいまだに新たな機能や
生産性を飛躍的に向上させる使い方を発見し続けている。

URLリンク(arst.ch)


318:名無しさん@お腹いっぱい。
12/03/18 14:43:38.95
まぁVIMが便利というか、VIMのプラグインが便利なんだけどね。

319:名無しさん@お腹いっぱい。
12/03/18 16:54:46.80
Vキチさん達がVim本体をdisりつつプラグインのステマをしまくった弊害がここにも

320:名無しさん@お腹いっぱい。
12/03/18 17:05:10.73
実際、プラグインがなかったらvim使うのなんて、しゃーなしで使うレベルに落ちるだろ
単体でも便利な所あるけど単体のみだけで使うなら別のエディタ使った方が便利なの沢山ある

321:名無しさん@お腹いっぱい。
12/03/18 18:00:03.69
便利な別のエディタを遍歴した挙句、結局vi系に帰還するですよ。ペールギュントのように。
まぁ、ソルヴェイグの歌でも聴きなされ。
URLリンク(www.youtube.com)

322:名無しさん@お腹いっぱい。
12/03/18 18:00:15.11
弊害がここにも
まぁひとそれぞれだから仕方がないけどVim本体disらずにステマしてくれ

323:名無しさん@お腹いっぱい。
12/03/18 20:51:00.59
でもパッチとして取り込まれれば歓迎するんだろ

324:名無しさん@お腹いっぱい。
12/03/18 21:51:01.31
しんちゃん...

325:名無しさん@お腹いっぱい。
12/03/18 22:06:35.64
>>320
プラグインなくてもVim選ぶけどな。viは選ばないけど

326:名無しさん@お腹いっぱい。
12/03/19 01:41:09.81
プラグインは使わない。vimrcもせいぜい数十行に収める。
大抵unixツールで代用が効いたり、もっとスマートな方法がある。

327:名無しさん@お腹いっぱい。
12/03/19 03:02:38.94
>>326
俺はプラグインも使うしvimrcも数十行には収まらない。
けど、一部にあるvimrcの行数がが多い方がイケてるみたいなのはよくわからん。

328:名無しさん@お腹いっぱい。
12/03/20 13:58:53.39
Linuxで使う場合はいいけど、どうしてもvim使わなきゃいけない場合はプラギンに頼るしかなくね?

329:名無しさん@お腹いっぱい。
12/03/20 14:18:57.10
このスレはドザーに排他的だからな
UNIX板だし仕方ないか

330:名無しさん@お腹いっぱい。
12/03/20 14:59:12.98
linux系で使うにしてもプラグインは便利だろ

331:名無しさん@お腹いっぱい。
12/03/20 15:07:01.80
>>328
Linuxでvim使う場合はプラギンに頼らなくても使えるけど
Windowsで使う場合ははプラギンに頼らないと無理じゃね?
という意味?

WindowsでもGNU grep & diff とctags.exeがあれば困らないんだけど。
(Chalice使うなら追加で curl.exeとgzip.exe だね)

LinuxとWindowsでそこまで変わる原因ってなんだろうか?
外部コマンドの有無?
「無理じゃね?」と思っている理由が知りたいです。

332:名無しさん@お腹いっぱい。
12/03/20 15:10:16.07
マージされてるプラグインがある以上
マージされないのにもそれなりに理由があるわけで。

Windowsをバカにするつもりはないけど、
cygwinでもなんでも外部ツールと組み合わせるのは悪い習慣じゃないよ。

どうしてもプラグインに頼らざるを得ない場面って例えばどんなの?

333:名無しさん@お腹いっぱい。
12/03/20 15:13:37.71
「プラギン」だって やだねえ

「メイル」とかわざわざ書いてる奴もいたなあ(絶滅したけど)
「ストーレジ」なんてのも見たなあ

あーやだやだ

334:名無しさん@お腹いっぱい。
12/03/20 15:26:12.84
試しもせずに文句ばっかり
老害おつ

335:名無しさん@お腹いっぱい。
12/03/20 15:26:19.36
>>333


336:名無しさん@お腹いっぱい。
12/03/20 15:27:32.30
最近しょうがなくプラグインに頼ったのはvim-coffee-scriptぐらい。
本家でsyntax出てくるまでのつなぎかなぁ。
やれPathogenだVundleだ、dotfileの中だからgit-submoduleだってのもだるくて。

vim --startuptimeしたらこんな感じ:
286.748 000.003: --- VIM STARTED ---

337:名無しさん@お腹いっぱい。
12/03/20 15:53:35.87
>>333
プラギンは許せよ
プラグインよりプラギンの方がタイプしやすいだろが

338:名無しさん@お腹いっぱい。
12/03/20 16:24:09.90
pぅぎn

339:名無しさん@お腹いっぱい。
12/03/20 16:27:36.20
>>334
そう、俺達は "Raw Guy".
だからpluginを使わないんだよ
(rawはいろんな意味があってヤバいなww)

340:名無しさん@お腹いっぱい。
12/03/20 16:33:05.21
原理派とプラグイン派でスレを分離するほどのことでもないだろう
そこは共存をはかるべきではないかね?

341:名無しさん@お腹いっぱい。
12/03/20 17:30:55.03
プラギンは恥ずかしいな。
メイルはハイフン打つより、i が打ちやすいからこれからは使っていこう。

342:名無しさん@お腹いっぱい。
12/03/20 17:47:42.78
プラギンが許されないなんて信じられない!なんて生きづらい世の中だ。
プラギンはプラギンでしょ。
プラグインって早口で10回言ってごらん?ほら、プラギンになっただろう?

343:名無しさん@お腹いっぱい。
12/03/20 17:50:03.40
結局プラグゥィンが一番しっくりくる

344:名無しさん@お腹いっぱい。
12/03/20 18:14:14.46
>>332
どうしても頼らざるを得ない場面はないと思うけどな。俺の知らない状況があるんかな。
vim --noplugin でも、テキスト編集はできるわけだし

345:名無しさん@お腹いっぱい。
12/03/20 18:19:58.80
>>336
シブいな。:scriptnames が一画面に収まりそうだ

346:名無しさん@お腹いっぱい。
12/03/20 20:25:23.55
>>345
22行だった。

347:名無しさん@お腹いっぱい。
12/03/20 20:42:21.38
最近開いたファイルを開き直すとか

348:名無しさん@お腹いっぱい。
12/03/20 20:43:10.13
>>346
ミニマリストだな。それってほぼ素の状態でしょ。
俺は54行

349:名無しさん@お腹いっぱい。
12/03/20 20:58:23.50
97行だった
普通かな

350:名無しさん@お腹いっぱい。
12/03/20 21:50:44.69
anythingとかneoなんちゃらとかは確かに使いたくない。
しかし個々の機能を便利にするピンポイントのプラグインは積極的に採用すべき、とは思う。
超主観的だけど。

デフォルトに無いハイライトだったり、コメントアウトをもっと賢くしたり、surround.vimだったり、そういう系ね。

351:名無しさん@お腹いっぱい。
12/03/20 21:54:49.02
surround.vimは便利だね
テキストオブジェクト系は本家に取り込みを検討するレベルだと思う

352:名無しさん@お腹いっぱい。
12/03/20 23:03:08.39
そんなこといいだすときりがないw 使う人がどこかで線を引けばそれでいいんだけどね。
んで、線の引き方の一つとして本家に入ってる入ってないで決めるというのもあり。

353:名無しさん@お腹いっぱい。
12/03/20 23:03:22.37
1200行・・・普通だな!

354:名無しさん@お腹いっぱい。
12/03/20 23:45:22.09
>>353
:scriptna の結果が1200だったら変態

355:名無しさん@お腹いっぱい。
12/03/20 23:54:59.63
howmを取り上げられたら氏んでしまう

356:名無しさん@お腹いっぱい。
12/03/21 00:15:02.27
>>347
最近開いたファイルはシェルかvimのヒストリ漁れば出てくる。
vimのヒストリはq:でミニバッファ出せば普通に検索できる。
↓な感じにしておいて、うろ覚えの時はreverse-i-searchかけたり。

# .bashrc
export HISTCONTROL=ignoreboth
export HISTIGNORE="ls:cd*:history*"
export HISTSIZE=10000

# .inputrc
"\C-n": history-search-forward
"\C-p": history-search-backward
set completion-ignore-case on

>>350 >>351
対応する括弧に飛ぶ%とジャンプ前の位置に戻るCTRL-O組み合わせれば
surround.vimはあんまし気になんない。時々いいなと思うけど。

( foo, bar, buz )
↓ %%r]<CTRL-O>r[
[ foo, bar, buz ]

357:名無しさん@お腹いっぱい。
12/03/21 00:41:30.81
>>356
vimのヒストリからさがすって:e :sp :vspとかいろいろあるから探しにくそう。
どうやってスムーズにファイル名を見つけるの?

358:名無しさん@お腹いっぱい。
12/03/21 01:26:57.23
>>357
普通はq:か:してから<CTRL-F>でヒストリバッファ開いて
?(ファイルパスの一部)
で検索かけてnnnn...みたいな。

もちょっと掘り下げたりプロジェクト俯瞰する時によくやるのは、
vim開いてから
!!git log --name-only
<CTRL-V><CTRL-N>
見つけたファイルパスの上にカーソルのっけてgf

うっかり版管理してなくて、いよいよ泥臭く探すしかなくなったら
:r ~/.viminfo
:%v/\v^:(e|v?sp) /d
してからさっきみたいにジャンプ。

359:358
12/03/21 01:29:09.30
ごめん、<CTRL-V><CTRL-N>じゃなくて<CTRL-W><CTRL-V>だった。

360:名無しさん@お腹いっぱい。
12/03/21 01:32:51.55
hownって何が便利なんだ?
メモ用のディレクトリなりファイルなりにショートカットで飛ぶマッピング用意しておけばそれでよくね?

361:名無しさん@お腹いっぱい。
12/03/21 03:32:12.27
慣れたvimmerは何個もvimを立ち上げないし
エクスプローラから開いたり
terminal から何回もコマンド叩いて開いたりしない

362:名無しさん@お腹いっぱい。
12/03/21 03:54:25.08
>>358
最後のって今書いたのかな。
まぁ、方法はいくらでもあるよということを言いたいんだろうけれど。

363:名無しさん@お腹いっぱい。
12/03/21 04:24:18.61
>>362
そうだと思う。
プラグイン使わないと無理ってわけじゃない、てことが言いたいんだと。
>>332の最後の疑問に対する回答>>347への更なる回答。

364:358
12/03/21 04:30:13.41
>>362 >>363
うん。そゆこと。プラグインは否定しないよ。
管理が面倒でなければってだけの話で。
面倒くさがりだからホントはregexpごりごりなんてプラグイン以上にやりたくない。

365:名無しさん@お腹いっぱい。
12/03/21 05:33:53.06
エクスプローラ否定派まで出てきたかー
出来の悪いファイラーよりは全然使えるよ。

366:名無しさん@お腹いっぱい。
12/03/21 06:33:52.37
>>361 はemacsを邪揄したギャグじゃないの

367:名無しさん@お腹いっぱい。
12/03/21 10:51:58.57
「VimユーザによるVimユーザのためのEmacs」
少し古いが
software design 3月号、連載記事emacsのトラノマキ35回。
Evilというvi-mode.elのお話だった。

368:名無しさん@お腹いっぱい。
12/03/21 12:42:42.16
日本人ってnetrw使わないよな。日本の外ではメジャーなのに。

369:名無しさん@お腹いっぱい。
12/03/21 12:48:41.93
なんで使わないと思ったん?

370:名無しさん@お腹いっぱい。
12/03/21 13:35:55.81
グインプラ

371:名無しさん@お腹いっぱい。
12/03/21 13:39:48.44
netrwのデフォルトバインドが気に入らない

372:名無しさん@お腹いっぱい。
12/03/21 14:23:44.47
netrwよく使ってるけど、いくらか不満がある
・netrwのバッファが最後に残ったとき、閉じ方がわからない
・netrwのバッファを変更をしてしまったらしいとき、変更が保存されていませんと言われて閉じられなくなる

373:名無しさん@お腹いっぱい。
12/03/21 23:04:02.42
vi file1 file2
でウィンドウ上下分割して開くことってできますか?

374:名無しさん@お腹いっぱい。
12/03/21 23:11:13.51
>>373
できるよ

375:名無しさん@お腹いっぱい。
12/03/21 23:11:56.68
>>373
vim -o2 file1 file2

vim --help みてみ

376:名無しさん@お腹いっぱい。
12/03/21 23:29:53.93
>>374,375
ありがとうございます!

377:名無しさん@お腹いっぱい。
12/03/22 15:03:53.12
「Microsoft Excel」に「Vi」「Vim」風の操作をもたらすマクロ「Vimxls」
URLリンク(www.forest.impress.co.jp)

378:名無しさん@お腹いっぱい。
12/03/22 19:18:30.59
ワークシートでなく、VBAエディタをvi風にして欲しい。

379:名無しさん@お腹いっぱい。
12/03/22 19:25:00.56
VBEのエディタって変えられないのかな?


380:名無しさん@お腹いっぱい。
12/03/23 21:27:03.95
セルの中でvi風に編集はできないのか・・・

381:名無しさん@お腹いっぱい。
12/03/24 10:32:03.62
>>380
それは難しいんじゃ……

382:名無しさん@お腹いっぱい。
12/03/24 10:35:18.48
なんか今回のパッチあてたら常にset moreな感じになっちゃうね

383:名無しさん@お腹いっぱい。
12/03/24 11:28:37.54
そんなあなたにKeyVi
URLリンク(easter.sakura.ne.jp)

384:名無しさん@お腹いっぱい。
12/03/24 12:53:07.97
>・年齢が16進数で10代ぢゃなくなりますた。
> 0xハタチです。
・・・

385:名無しさん@お腹いっぱい。
12/03/24 13:29:33.92
ペーストしたテキストのインデントが、ペースト先のインデントと違っていた場合(例えばif文の中)に、
インデントを合わせる簡潔な方法を教えてください。

386:名無しさん@お腹いっぱい。
12/03/24 13:56:31.09
>>385
]p

387:名無しさん@お腹いっぱい。
12/03/24 13:56:45.76
>>385
pでペーストせずに、]p

388:名無しさん@お腹いっぱい。
12/03/24 14:00:29.91
ありがとうございます。
]p …
少し押しづらいですね

389:名無しさん@お腹いっぱい。
12/03/24 14:01:45.05
>>385
ただしオートじゃなくてカーソル行のインデントが使われるだけなので、例お望みの動作とはちょっと違うかもしれん。

390:名無しさん@お腹いっぱい。
12/03/24 15:57:15.19
ペーストしてからインデントすりゃいいじゃん
そんなしょーもない知識覚えるだけ無駄

391:名無しさん@お腹いっぱい。
12/03/24 16:02:55.32
]p知らなかった…
これはだいぶ楽になるー

>>390
それかなり手間かかるからめんどくさかったんだよね

392:名無しさん@お腹いっぱい。
12/03/24 16:08:59.93
自分の知らない操作否定派まで現れた。
学習拒絶?

393:名無しさん@お腹いっぱい。
12/03/24 16:22:54.44
そうだよな。9314行下に移動したいときは下向きカーソルキーを9314回押せばいいんだよな。

394:名無しさん@お腹いっぱい。
12/03/24 16:58:35.54
Viスレ見てないとわからないぞw

395:名無しさん@お腹いっぱい。
12/03/24 17:07:10.19
>>383
KeyViだとExcel上で使おうと思った場合、結局F2とか押さなきゃならなくて不便じゃね。
セル内改行もAlt+Enterになっちゃうし。

>>380
ExAddinっていうアドインをつかうと任意のショートカットキーに
「セルを任意のエディタで編集」って言う機能を割り振りできる。
gvimだとナゼか編集内容がセルに反映されないけど、jvim3だったらいける。
>>377のvimxlsと組み合わせて使えれば、多少はマシになりそうな気がする。

俺は↓を参考に全部yamyでやってるんで試さないけど。
URLリンク(www.geocities.co.jp)
Excel上の動きもそこそこ考慮してある見たいで、少し変だけど使える。

スレ違いだな。

396:名無しさん@お腹いっぱい。
12/03/24 19:08:14.32
>>392
>>390じゃないが俺も二度手間多すぎてgp=aBになった派

397:名無しさん@お腹いっぱい。
12/03/24 19:35:56.41
>>396
Nice! ブロック内ならその手もあり。
最初のgなくてもいいんちゃう?


398:名無しさん@お腹いっぱい。
12/03/24 20:37:09.79
>>397
趣味もあるけどこの方が=''とか=zkなんかで応用が効いて便利

399:名無しさん@お腹いっぱい。
12/03/24 21:16:10.29
ブロックなければ p=g'] を map かね。
indent が正しく走らないと使えないので ]p には意味があると思うが。

400:名無しさん@お腹いっぱい。
12/03/24 21:25:52.99
しかし [ とか ] が混ざるコマンドはいつまで経っても覚えられんのう

401:名無しさん@お腹いっぱい。
12/03/24 21:42:57.18
nnoremap <expr> gp '`[' . strpart(getregtype(), 0,1) . '`]'
貼り付けたテキストをビジュアル選択状態にする
~Vimテクニックバイブル3章15節

402:名無しさん@お腹いっぱい。
12/03/24 22:00:35.55
>>399
'[と']の間だけ=でインデント直しても意味ないから
手軽に周りを巻き込むためにはやっぱ=zkが汎用性高いかなと思ってるんだがどうだろうな
]pは条件節の上にカーソルがあるときにインデント追加してくれなかったり
いまいち気が利かないからやっぱ後から直す派だな

403:名無しさん@お腹いっぱい。
12/03/24 22:55:10.95
'] とか普段使ってないからよくわからないけど
'[, '] 間以外で indent する必要って何?
後続の indent が変わる時とか?
]p はまあ… 打鍵数が同じで = が完全に期待値なら使う理由はないけど。

404:402
12/03/25 00:18:42.99
あれ、すまん
gpじゃなくてpならカーソル動かんから=']の方がお手軽キレイか

405:名無しさん@お腹いっぱい。
12/03/25 02:11:43.51
vim を使ったことの無い人からすれば、
このスレは隠語で離しているような状態だよなw

406:名無しさん@お腹いっぱい。
12/03/25 03:59:24.76
あー違う違う、もうちょいl。そう、そこにpしといて。
終わったらggしていいから。

407:名無しさん@お腹いっぱい。
12/03/25 07:33:38.49
たまにwindowsのメモ帳とか使うと恐ろしく使い辛いツールに思える

408:名無しさん@お腹いっぱい。
12/03/25 08:13:27.91
確かコーンウェルの「真犯人」で、電話越しかなんだったかでviコマンドを指示してるのが
あったと思う

409:名無しさん@お腹いっぱい。
12/03/25 08:13:39.50
>>407
さすがにメモ帳はキツいわ
素のViもアレだけど

410:名無しさん@お腹いっぱい。
12/03/25 09:35:49.96
酢はカラダに良いよ。

411:名無しさん@お腹いっぱい。
12/03/25 10:55:34.92
Vinegar IMproved

412:名無しさん@お腹いっぱい。
12/03/25 15:25:42.03
nviやBSD viは勘弁。。

413:名無しさん@お腹いっぱい。
12/03/25 16:55:19.89
Windows 上の jvim (ver3 ごろから分岐したモノ)
Windows/Linux 上の Ver5 以上の vim, GVim
の2種類しか、使ったことにない。
いったい、どんだけ vi 風エディタってあるんだ

414:名無しさん@お腹いっぱい。
12/03/25 17:05:28.09
もうviと言ったらVimと思って良いぐらいのレベルには来てるよな
素のviなんて使ってるひとほとんどいないだろうし

415:名無しさん@お腹いっぱい。
12/03/25 19:11:14.46
stivie とか elvis とか

416:名無しさん@お腹いっぱい。
12/03/25 19:17:59.04
昔は名前のどっかにviが入った不思議viクローンがたくさんあったなぁ
つってもDOS時代くらいまで記憶がさかのぼるけど

417:名無しさん@お腹いっぱい。
12/03/25 20:08:01.19
viviとか。中身はゴミでのくせにシェアウェア(笑)

418:名無しさん@お腹いっぱい。
12/03/25 20:08:27.26
訂正:ゴミのくせに

419:名無しさん@お腹いっぱい。
12/03/25 21:07:11.30
ViViは…どうしてああなっちゃったんだろうな?

vi分を切り離して普通のエディタにするか
viに特化してxyzzyみたいなポジションを狙えば良かったのに
どっちも中途半端&変なライセンス認証ってのがねぇ

俺はエディタの出来自体はゴミとは思わないけど褒めどころも難しい

420:名無しさん@お腹いっぱい。
12/03/25 21:11:08.91
viviっつーとユーザの大学分布とか公開してたアレか
当時若干引いたわ

421:名無しさん@お腹いっぱい。
12/03/25 21:17:57.91
Emacs/Vim が存在するので、似た操作体系のシェアウェアは存続できない。
シェアウェアとして生き残るのは、秀丸、EmEditor のようなエディタ。
ViViが、中途半端になるのは宿命だったのかな。
ひとりで開発をしているのならば、
Vim についていくのは拷問だろうし。

422:名無しさん@お腹いっぱい。
12/03/25 21:48:46.85
Windowsでしか使えないという時点で選択肢にはいらなかった

423:名無しさん@お腹いっぱい。
12/03/25 22:31:09.02
>>419
ViViて、まだ開発続いてたんだな

424:名無しさん@お腹いっぱい。
12/03/25 23:39:15.46
ViViはやっと使い物になるリリースが出たと思ったら、あっさり安定ブランチ打ち切って
開発ブランチに突入するんだもん。Mozillaだってそこまでひどくねーぞ。

開発者が、コードを捨ててスクラッチからやり直したい病に取り憑かれているよ。
あと何回発病するんだって。

425:名無しさん@お腹いっぱい。
12/03/26 00:00:44.55
完全にスレチ感があるけど、こういうのは面白い試みだと思うよ。
URLリンク(vivi.dyndns.org)

Vimで拡張されている機能を取るか、ViViで拡張されている機能を取るかの選択だと思うんだけど、そこは好みじゃないかな。
俺含め、このスレにいるような人たちは当たり前のようにVimを選択するだろうけど

426:名無しさん@お腹いっぱい。
12/03/26 12:37:49.10
viモードのあるwz editor、みたいな路線だよねviviは

427:名無しさん@お腹いっぱい。
12/03/26 14:36:06.74
うーん
よくわからん人よねぇ、ViViの作者は

眺めるぶんには面白い

428:名無しさん@お腹いっぱい。
12/03/26 15:40:29.83
viviのページはじめて見たけど面白そうなエディタじゃないか。
Vimには出来ない機能が付いてるし。
インライン画像とかインラインCSVとか。

429:名無しさん@お腹いっぱい。
12/03/26 17:04:45.72
viviの話は別の板でやってくんね?

430:名無しさん@お腹いっぱい。
12/03/26 18:39:26.85
昔は vivi スレってあったのかね?

431:名無しさん@お腹いっぱい。
12/03/26 18:57:34.90
マイナーテキストエディタ愛好会 Part3
スレリンク(software板)

適当に探したけど、ここじゃないかな。テンプレにもあるし。

432:名無しさん@お腹いっぱい。
12/03/26 19:07:28.85
単独スレは
テキストエディタ「ViVi」ってどうよ?
スレリンク(software板)
ViViエディタ Part 2
スレリンク(software板)
【スリル満点】ViViエディタ Part 3【バグ大目】
スレリンク(software板)

ここと関連は深いけどスレ違いっていうか板違いになっちゃうんで
つもる話があればソフ板のVimスレかテキストエディタスレで語ってはどうかな

433:名無しさん@お腹いっぱい。
12/03/26 19:20:08.51
VimVim を誰か作って。

434:名無しさん@お腹いっぱい。
12/03/26 20:28:59.97
xyzzyのような、Windows環境に配慮したVimのポーティング希望。
特にutf8周りがなんともな…
外部コマンドとして gnu sortを呼び出すと文字コード周りで問題起こすので。。

435:名無しさん@お腹いっぱい。
12/03/27 00:35:18.52
xyzzy優秀だけど、Emacsでいいだろ。

436:名無しさん@お腹いっぱい。
12/03/27 00:53:16.37
Sublime Text 2 をVimモードで使ってみるとか

437:名無しさん@お腹いっぱい。
12/03/28 01:07:15.83
foldexprについて教えてください

setl fdm=expr foldexpr=<SID>python_fold(v:lnum)
fu! s:python_fold(lnum)
let l:line = getline(a:lnum)
let l:next = getline(a:lnum + 1)
if l:line =~ '^\s*def.*:$'
return 1
elseif l:next =~ '^\s*def.*:$'
return '<1'
endif
endf

とりあえずafter/ftplugin/python.vimにこんな感じに書いて試してみてるんですが
うまくいかないのでアドバイスをお願いできませんか

438:名無しさん@お腹いっぱい。
12/03/29 08:29:31.67
>>382
7.3.483のパッチで直ってました

439:名無しさん@お腹いっぱい。
12/03/29 09:29:56.04
>>437
俺Pythonよく知らんけど、メソッド単位で折りたたみたいならできた。
globalメソッドにしないと動かん。
setl fdm=expr foldexpr=PythonFold(v:lnum)
fu! PythonFold(lnum)
let line = getline(a:lnum)
if line =~ '^\s*def.*:$'
return '>1'
endif
return '='
endf


440:名無しさん@お腹いっぱい。
12/03/30 20:00:15.95
expr-isとexpr-==の違いがヘルプを読んでもイマイチ理解できないので誰か説明してくれないでしょうか?

441:名無しさん@お腹いっぱい。
12/03/30 20:31:26.70
>>440
書いてあるまんまでいいと思うけど。
is を List や Dictionary に使う場合は、それらの参照が同一かどうかをチェックする。
== は値しかみてない、ってことじゃなかろうか。

let a = [10, 20]
let b = [10, 20]
let c = a
let cp = copy(a)
let dcp = deepcopy(a)

echo 'List'
echo [1, 2, 3] == [1, 2, 3]
echo [1, 2, 3] is [1, 2, 3]
echo a == [10, 20]
echo a is [10, 20]
echo a == b
echo a is b
echo a == c
echo a is c

echo '----------'
echo 'copied List'
echo a == cp
echo a is cp
echo 'deep copied List'
echo a == dcp
echo a is dcp


442:名無しさん@お腹いっぱい。
12/03/31 00:13:29.52
>>309
x-emacsの背景は透過できなかったが
仮想端末は透過できてカッチョよかったから

443:名無しさん@お腹いっぱい。
12/03/31 00:19:01.86
>>442
それ新しいな

444:名無しさん@お腹いっぱい。
12/03/31 12:25:32.16
Emacsもたま~に使うが、そのときは -nw 付けてるな
折角端末上で使えるのにGUIにしたくない
Vimメインなのも、端末上でそのまま使えるからだし

445:名無しさん@お腹いっぱい。
12/03/31 23:19:05.76
今って fileencodings の途中に encoding と同じものを入れても
そこで必ず止まる訳じゃないんだな。昔は違った気がするけど。
これで cp932 を後においやれる。

446:名無しさん@お腹いっぱい。
12/03/31 23:29:57.32
止まるよ?
utf-8だけ特別。

447:名無しさん@お腹いっぱい。
12/04/01 07:29:01.63
あーそうだったのか。
utf-8 に変えた時に前の方にもってくればよかったのか。
非 utf-8 の判定精度が高ければ fencs の最初にした方がいいのかね。

448:名無しさん@お腹いっぱい。
12/04/01 15:02:25.10
ascii判定の問題もあるからenc=utf-8ならfencs=ucs-bom,utf-8,...がいい。

449:名無しさん@お腹いっぱい。
12/04/01 15:06:25.30
URLリンク(files.kaoriya.net)
なんで英語配列推奨しときながら、HHKを推奨してるあたりカンチガイも甚だしい。

450:名無しさん@お腹いっぱい。
12/04/01 15:35:29.78
emacsみたいな強制インデントが欲しい。
もう何をどう入力しようが絶対にインデント崩せないくらいの強力な奴。

451:名無しさん@お腹いっぱい。
12/04/01 16:56:18.60
>>449
俺んとこも英語配列のHHKだけど……?

452:名無しさん@お腹いっぱい。
12/04/01 17:09:50.23
多分、HHKのは本当の意味での英語配列じゃないとかなんとか

453:名無しさん@お腹いっぱい。
12/04/01 19:00:49.68
>>452
たしかにちょっと違う。そんな俺はリアフォ派

454:名無しさん@お腹いっぱい。
12/04/02 00:13:30.37
>>449
>>452
使用頻度の高いEscとDelを下ろしたから却って打ちやすくなってると思うけど?

455:名無しさん@お腹いっぱい。
12/04/02 00:16:04.43
あ、DelじゃなくてBSだった

456:名無しさん@お腹いっぱい。
12/04/02 00:52:04.80
>>454
そいや~ってどこにあるの?HHKだとそこESCにつぶされるよね

457:名無しさん@お腹いっぱい。
12/04/02 12:23:20.72
\の右隣

458:名無しさん@お腹いっぱい。
12/04/08 17:45:16.96
まだvimを使い慣れていないので、
たまに文書の中に i とかが残るwww

459:名無しさん@お腹いっぱい。
12/04/08 17:52:53.45
viから離れてemacsとかで作成すると残ることはある。

460:名無しさん@お腹いっぱい。
12/04/08 22:19:55.05
ネオコンプリキャッシュとか
サラウンドビムとか
ユナイトとか
すごく便利です。 作者のかたありがとうございます。

m(__)m


461:名無しさん@お腹いっぱい。
12/04/09 06:06:18.02
set wildmenuが効かない・・・
URLリンク(codepad.org)
↑vimrc
ほかのひとのVimrcだと効くから自分の設定ファイルの中の何かが原因なのだろうけど
何が原因か分からん/ ,' 3  `ヽーっ
誰かご教示いただければ・・・(´・ω・`)

462:名無しさん@お腹いっぱい。
12/04/09 07:46:22.01
>>461
:verbose set wildmenu?
これで最後にwildmenuが設定された箇所がわかる

463:名無しさん@お腹いっぱい。
12/04/09 17:09:17.48
URLリンク(www.dotup.org)
問題なくvimrcで定義はされているみたいなのです・・・
設定ファイルは.vimrcと.gvimrcの2つのみですね
やっぱりダメなんだよなぁ・・・

464:名無しさん@お腹いっぱい。
12/04/09 18:19:57.87
効いてないことはないんでない?
効いてるけど、たとえばその後使用するキーが別の機能に上書きされてて、使えないように見えるだけとか。

465:名無しさん@お腹いっぱい。
12/04/09 18:44:32.82
wildmodeが full 以外になってるとか


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch