Vim Part22
■ このスレッドは過去ログ倉庫に格納されています
0001ほらよ
2013/04/04(木) 19:32:22.37http://www.vim.org/
前スレ
Vim Part21
http://toro.2ch.net/test/read.cgi/unix/1342368545/
関連情報は>>2-6あたり。
0195名無しさん@お腹いっぱい。
2013/08/25(日) NY:AN:NY.ANinsert modeならautocmdのInsetEnterとInsetLeaveでなんとかなるんだけど
0196名無しさん@お腹いっぱい。
2013/08/25(日) NY:AN:NY.ANCursorHoldでmode()判定するとかかな
:h mode(
0197名無しさん@お腹いっぱい。
2013/08/25(日) NY:AN:NY.ANvisual modeに入るときに色変える関数呼び出すようにmapして、
normal modeにもどったときにCursorHoldで色戻すようにしたわ。
助言ありがとな
0198名無しさん@お腹いっぱい。
2013/08/25(日) NY:AN:NY.AN0199名無しさん@お腹いっぱい。
2013/08/26(月) NY:AN:NY.ANテキストオブジェクト昨日のインナー
0200名無しさん@お腹いっぱい。
2013/08/26(月) NY:AN:NY.ANと入力すると
未知のオプションです
とエラーがでます
どうすればいいでふか?
0201名無しさん@お腹いっぱい。
2013/08/26(月) NY:AN:NY.ANで、なにかいいことありましたか?
0202名無しさん@お腹いっぱい。
2013/08/26(月) NY:AN:NY.AN0203名無しさん@お腹いっぱい。
2013/08/26(月) NY:AN:NY.AN:se bg=dark
0204名無しさん@お腹いっぱい。
2013/08/26(月) NY:AN:NY.ANできない
0205176
2013/08/26(月) NY:AN:NY.ANそれだとキー入力が多くなってしまうのでもうすこし楽な方法を探したいです…
>>186
それだと単語単位での置き換えしかできないのでちょっと希望に合わないんです
注文が多くてすみません
>>190
これすごくいいです!
これを使わせていただこうと思います
ありがとうございます
答えてくださった方々ありがとうございました
0206名無しさん@お腹いっぱい。
2013/08/26(月) NY:AN:NY.AN>>186は関数に与える正規表現によって単語単位とは限らんやろ
解決したみたいやからええけど
0207名無しさん@お腹いっぱい。
2013/08/27(火) NY:AN:NY.ANset background=dark かな
0208名無しさん@お腹いっぱい。
2013/08/27(火) NY:AN:NY.ANset background=dark かな
0209名無しさん@お腹いっぱい。
2013/08/27(火) NY:AN:NY.ANそれから考えなおしたんだけど、
:ma a | .,$s/hoge/fuga/gc | exec "normal 'a" | 0,.-1s//~/gc
ってやれば重複なしで止まれる。
どんな挙動求めてるか知らないからよけいなお世話かもしれないけど、一応
0210名無しさん@お腹いっぱい。
2013/08/27(火) NY:AN:NY.AN:ma a | ,$s/hoge/fuga/gc | exec "normal 'a" | 0,-1s//~/gc
0211名無しさん@お腹いっぱい。
2013/08/27(火) NY:AN:NY.ANse bg=dark
0212名無しさん@お腹いっぱい。
2013/08/27(火) NY:AN:NY.AN0213名無しさん@お腹いっぱい。
2013/08/27(火) NY:AN:NY.AN複数行ペーストする
0214名無しさん@お腹いっぱい。
2013/08/27(火) NY:AN:NY.ANおにいちゃん、コマンドおしえてー
0215名無しさん@お腹いっぱい。
2013/08/27(火) NY:AN:NY.ANp
1行を3行に複製したいなら
yy2p
0216名無しさん@お腹いっぱい。
2013/08/29(木) NY:AN:NY.AN0217名無しさん@お腹いっぱい。
2013/08/29(木) NY:AN:NY.AN0218名無しさん@お腹いっぱい。
2013/08/29(木) NY:AN:NY.ANci(でも同じようにしたいんですけど
%ci(ってみなさんしてますか?
それと複数''があった場合ってf'を何回かしてからci'ですか?
0219名無しさん@お腹いっぱい。
2013/08/29(木) NY:AN:NY.ANあれなんで挙動違うんやろな…
f(ci( ってやってるわ
0220名無しさん@お腹いっぱい。
2013/08/29(木) NY:AN:NY.AN0221名無しさん@お腹いっぱい。
2013/08/29(木) NY:AN:NY.AN[ ]がカーソル位置
ci' →
aaa bbb (ccc) '[]'
ci( →
a[a]a bbb (ccc) 'ddd' (変化なし)
ほんとだ
0222名無しさん@お腹いっぱい。
2013/09/04(水) 03:06:39.62(( a = ((b+1)/(c-1)) ))
みたいに数式評価の (( )) 内に))があると、外側の )) が赤く警告を出すんですが
どうすれば解決できますか?何かお勧めなプラグインとかありますか?
0223名無しさん@お腹いっぱい。
2013/09/04(水) 15:29:01.94じゃだめなの?
0224名無しさん@お腹いっぱい。
2013/09/04(水) 16:13:56.50シェルの種類によって色々やってるからなんとかなるかもしらん
ここかねえ
if exists("b:is_kornshell") || exists("b:is_bash")
syn region shDblBrace matchgroup=Delimiter start="\[\[" skip=+\\\\\|\\$+ end="\]\]" contains=@shTestList
syn region shDblParen matchgroup=Delimiter start="((" skip=+\\\\\|\\$+ end="))" contains=@shTestList
endif
echo b:is_kornshell
echo b:is_bash
ってやったらどっちか1になる?
0225名無しさん@お腹いっぱい。
2013/09/04(水) 21:50:49.62C言語で下みたいな感じにコメント中に括弧が残っちゃってる時に
インデントがずれるんだけど、対処法知ってる人いない?
もちろんコンパイルは出来るんだけどなんか気持ち悪い。
int main(){
for(int i=0; i<5; ++i){
//if( hoge == 0 ){
printf("hello world");
}
return 0;
}
0226名無しさん@お腹いっぱい。
2013/09/04(水) 22:54:57.63教えてください。
下記の aaa~ccc を矩形選択し surround を利用して "" で囲む場合は
どのようにすればできるのでしょうか?
---aaa---
---baa---
---ccc---
↓
---"aaa"---
---"baa"---
---"ccc"---
やったこと
visual mode で矩形選択し、s" としても所望の動きにならず。
# evil-surround ではできないかもしれませんが、
# Vim のやり方も覚えておきたいと思いまして。
0227名無しさん@お腹いっぱい。
2013/09/04(水) 23:18:44.64surround.vim使用
xmap c <Plug>VSurround
aaa
bbb
ccc
を矩形選択(Visual Block)して、c" でいける
0228222
2013/09/05(木) 03:33:04.80レスありがとうございます。
echo b:is_kornshellは「未定義の変数です: b:is_kornshell」ってエラーが出ましたが、
cho b:is_bashは「1」が出ました。ちなみにシェルはzshです。
0229名無しさん@お腹いっぱい。
2013/09/05(木) 10:18:33.20それ素Vimでも楽勝だよ
gg/aaa<CR><C-V>7es""<Esc>P
0230名無しさん@お腹いっぱい。
2013/09/05(木) 17:18:10.180231名無しさん@お腹いっぱい。
2013/09/05(木) 17:38:33.65p したとき?
それ確かなかったと思うから
p`[V`]=
0232名無しさん@お腹いっぱい。
2013/09/05(木) 18:20:01.88既出。
p=`]
でok。
0233名無しさん@お腹いっぱい。
2013/09/05(木) 20:21:33.88i商品注文<ESC>
j.
と打つと2行目には「商品商品注文」のように挿入されるのですが、インラインインプットメソッドを使用するにしている限り対処しようがないでしょうか?
0234名無しさん@お腹いっぱい。
2013/09/05(木) 21:05:40.96.でリピートしているのだから、当たり前の結果にしか思えないのだけど、なにがしたいの?
0235名無しさん@お腹いっぱい。
2013/09/05(木) 21:07:33.89商品注文
商品注文
にしたいんじゃないの?
0236名無しさん@お腹いっぱい。
2013/09/05(木) 21:16:22.24それなら、2行目でi<C-a>すればいいんじゃないでしょうか?
0237名無しさん@お腹いっぱい。
2013/09/05(木) 21:59:33.17商品注文
商品注文
になる気がするのだが
インラインインプットメソッドって何だろう、知らん
0238名無しさん@お腹いっぱい。
2013/09/05(木) 22:11:58.83俺もインラインインプットメソッドなるものは分からんが同じような感じになる、、、
MacUIM + Anthyだけど
商品注文商品注文
てなるわ。
ちなみに、CUI版だと期待通りに動作する
過疎すぎて回答得られそうにないけど一応MacVimスレ
ttp://anago.2ch.net/test/read.cgi/mac/1133534694/
0239名無しさん@お腹いっぱい。
2013/09/05(木) 22:31:28.07スレ値やけど直った
CMD + ,でPreferences開いて、Draw marked text inlineをオフにしたら期待通りの動作になる
marked textが何か知らんけど,,,
0240233
2013/09/06(金) 00:08:34.99>>239
そのチェックボックスがインラインインプットメソッドの設定です。kaoriya版だと日本語で「インラインインプットメソッドを使用する」という訳になってます。
そのチェック外すと入力中の文字が見えなくなって日本語がとても入力し辛くなります
0241名無しさん@お腹いっぱい。
2013/09/07(土) 20:13:52.74チュートリアル終わったら目を通すべきだと思った
0242名無しさん@お腹いっぱい。
2013/09/08(日) 20:44:05.08set mouse=a
してるとき、
単独マウス左クリックとalt + マウス左クリックを入れ替えたいんだけど、
できませんか?
0243名無しさん@お腹いっぱい。
2013/09/08(日) 20:48:01.82VIM - Vi IMproved 7.3
Huge 版 with GTK2 GUI.
です。
0244名無しさん@お腹いっぱい。
2013/09/09(月) 12:02:04.32set mouse=a じゃないときは入れ替えたくないってことかな
0245名無しさん@お腹いっぱい。
2013/09/09(月) 21:00:15.07これと同じか?
https://github.com/vim-jp/issues/issues/50
0246名無しさん@お腹いっぱい。
2013/09/09(月) 21:38:56.21OSちゃうけど同じ問題っぽいな。しかも2年前。。。
0247名無しさん@お腹いっぱい。
2013/09/13(金) 01:38:46.48ググっても他に出てこないから俺の環境の問題なのかと思ってはいるんだが。
英語ってのは単純にvim起動したときに表示されるメッセージが英語になったり、
挿入モードで下に挿入でなくINSERTの表示が出たりする。
0248名無しさん@お腹いっぱい。
2013/09/14(土) 01:04:28.86普段Kaoriya使ってないけどダウンロードしてみたらたしかにそうっぽい
まあINSERTでも問題なかろう
0249名無しさん@お腹いっぱい。
2013/09/14(土) 01:46:11.69設定ファイルでおすすめな設定とかあります?
いろいろありすぎてわからないのですが
0250名無しさん@お腹いっぱい。
2013/09/14(土) 02:11:53.29人それぞれ色があって自分の設定が一番使い易いと思ってるから、これコピーしときゃ間違いないみたいのはわからん
俺は最初数十行程度のvimrcをどっかで拾ってきて、徐々に人のを参考にしたりヘルプを読んだり(重要)しながら足していった
ちまちまやるの面倒くさかったら誰かのを丸ごとコピーしてもいいけど、いきなり1000行も2000行もあるのをコピーしてきたら全体を把握するのも難しいからオススメしない
関数も全然なくてシンプルだから、ここらへんから始めてみてもいいかも
ttp://stackoverflow.com/questions/164847/what-is-in-your-vimrc#answer-652532
0251名無しさん@お腹いっぱい。
2013/09/14(土) 02:28:47.56ctrl-cで解除できるようにしたいんだけど設定方法知らない?
Escは遠いしとctrl-[はなんか押すの苦手で...
0252名無しさん@お腹いっぱい。
2013/09/14(土) 02:57:36.67そういうオプションはたぶんない
rの代わりにgrを使えば<C-c>でキャンセルできる
grはVirtual Replace Modeなのでrとは挙動が違うところがあるけどたぶん問題ないと思う
0253名無しさん@お腹いっぱい。
2013/09/14(土) 03:13:01.23>rの代わりにgrを使えば<C-c>でキャンセルできる
うわ、ホントだ。知らなかった。rでgrするようにマッピングすることにしました。
どうもありがと〜
0254名無しさん@お腹いっぱい。
2013/09/14(土) 23:00:01.51似たような行の一部だけを変えて、複数行書きたくなる場合が
ありますが、vimを使った場合、どうやって書くのが効率いいんでしょうか?
例えばこんなやつ。
public static final String CONST_AAA = "AAA";
public static final String CONST_BBBB = "BBBB";
public static final String CONST_CCCCC = "CCCCC";
自分は今までは、
public static final String CONST_ = "";
public static final String CONST_ = "";
public static final String CONST_ = "";
という、変更がない部分をまず作り、
AAA
BBBB
CCCCC
という、変更部分だけのテキストを矩形選択してから貼付ける方法で
秀丸を使ってやってました。
vimでも同じやり方はできるのか?もっと効率がいいやり方があるのか知ってたら教えてください。
0255名無しさん@お腹いっぱい。
2013/09/14(土) 23:28:08.84AAA
BBBB
CCCCC
を元にマクロでやるかなあ
0256名無しさん@お腹いっぱい。
2013/09/14(土) 23:29:57.69public static final String CONST_AAA = "AAA";
と書く。次にEscでノーマルモードに戻りyyでヤンク、2pで2行ペーストすると以下のようになる。
public static final String CONST_AAA = "AAA";
public static final String CONST_AAA = "AAA";
public static final String CONST_AAA = "AAA";
ここで/ で検索モードに移行してAAAと打ち込むと6つのAAAが捕捉される。
nで3つめのAAAに移ったら cw で単語の置換で BBBBを打ち込む。
Escでノーマルモードに移ったら nで2行目最後のAAAに移動して . と打つ。
. は前と同じ処理をするからAAAがBBBに変わる。
そしてまたnを押して3行目のAAAに移動したらcw からCCCCCと打ってからEscで抜けて、
同じように n. で打ち終わる。
0257名無しさん@お腹いっぱい。
2013/09/15(日) 01:40:14.71よう、俺!
ほぼ同じだわ
0258名無しさん@お腹いっぱい。
2013/09/15(日) 02:00:56.41って、ことで最初に変化ある部分書いて変かないところを挿入かなあ。
s/^//でもいいけど
0259名無しさん@お腹いっぱい。
2013/09/15(日) 02:46:54.610260名無しさん@お腹いっぱい。
2013/09/15(日) 02:51:49.48http://qooqoo.tv/qq/id_question_02_17_00_2139479849/question.shtml
いかん、vim勢が足りん。
みんな助けてくれ
0261名無しさん@お腹いっぱい。
2013/09/15(日) 03:11:50.94>>258
「矩形(くけい)」だよ
0262名無しさん@お腹いっぱい。
2013/09/15(日) 11:01:29.29Gvimのばーじょんは7.4 です
フォントはInconsolataのTrueTypeを使っています。↓です。
http://code.google.com/p/googlefontdirectory/source/browse/inconsolata/?r=829b7e77062a1a06dfc90c29f0f413e2a1de44fe
Putty+Vimでは途切れません。
参考画像
http://uploader.sakura.ne.jp/src/up126534.png
0263sage
2013/09/15(日) 12:02:11.95"foo"と'foo'が混在しているソースを保守してます。
0264名無しさん@お腹いっぱい。
2013/09/15(日) 12:42:44.69/\("foo"\|'foo'\)
0265名無しさん@お腹いっぱい。
2013/09/15(日) 13:31:11.05ありがとうございます。
もう少しタイプ量の少ないやり方ないでしょうか。
毎回、手間で手間で…。
0266名無しさん@お腹いっぱい。
2013/09/15(日) 13:35:33.85あるいはその逆ではダメなのか?
0267名無しさん@お腹いっぱい。
2013/09/15(日) 13:38:07.36/["']foo["']
0268名無しさん@お腹いっぱい。
2013/09/15(日) 13:42:55.56そんな都合のいいはなしはねえべ
そのソース見るときだけ
cno ' ['"]
cno " ['"]
すれば少しは楽かね
0269名無しさん@お腹いっぱい。
2013/09/15(日) 13:48:00.49ですよね。
変数埋め込みがあるので"で統一したいけど立場的に言えないです…。
>>267
なるほど!
:s fooとかしたら/["']foo["']できるようにnoremap(なのかな)に初挑戦してみます。
アドバイスくれた方、ありがとうございます。
0270名無しさん@お腹いっぱい。
2013/09/15(日) 13:50:30.91vim cnoでググると何故かObjective-C関係が出てくるけど、何か素敵な可能性を感じます。
調べてみます。
0271名無しさん@お腹いっぱい。
2013/09/15(日) 16:42:38.35Objectiv-*Cの*が引っかかってる様子www
関数作るのめんどかったらこれ
autocmd FileType objc cnoremap ' ['"]
\ cnoremap " ['"]
関数作るなら一緒にコマンドと作ってマッピングした方がいいかも
全く思慮深くないけどこんな雰囲気か
fun! s:slash(str)
let pat = "['\"]" . a:str . "['\"]"
let ws = &wrapscan ? 'w' : ''
cal search(pat, 'c' . ws)
let @/ = pat
endfun
com! -nargs=1 Slash cal s:slash(<f-args>) | let &hls=1
nnoremap <Leader>/ :Slash<Space>
0272名無しさん@お腹いっぱい。
2013/09/15(日) 18:11:20.26/\(['"]\)foo\1
0273名無しさん@お腹いっぱい。
2013/09/15(日) 18:20:13.16環境が書いてないがPuttyとか言ってるしWindowsだとすると
https://github.com/vim-jp/issues/issues/450 の後半と同じか?
そうだとするとイタリックを使わないようにsyntaxファイルをいじるとか
0274263
2013/09/15(日) 18:21:41.02ありがとうございます。
0275名無しさん@お腹いっぱい。
2013/09/15(日) 20:42:51.92あ、たしかにそうや
0276254
2013/09/16(月) 10:20:22.21既に可変の部分のテキストが手元にある場合(例えばドキュメントなどに)は、
置換する方法で、テキストが手元になく、打ち込む必要がある場合は、
>>256 さんの方法がいいのかなと、自分なりに解釈しました。
ありがとうございました!!
0277名無しさん@お腹いっぱい。
2013/09/17(火) 18:19:04.64色々やってるんだけど <A-x>や<M-x>が一向に動かない
ターミナルエミュレータは8bit目を有効に、単純化のためxtermを
LC_ALL=C、screenは無しでもダメだった
後は何を試せばいいですか?
0278名無しさん@お腹いっぱい。
2013/09/17(火) 18:33:35.76わからんけど
:h map-alt-keys あたりにヒントない?
ESCなし、xtermだったらうまくいきそうな雰囲気なんやけどなー
0279名無しさん@お腹いっぱい。
2013/09/17(火) 20:30:36.14これ読みました?
http://d.hatena.ne.jp/thinca/20101215/1292340358
0280名無しさん@お腹いっぱい。
2013/09/17(火) 20:32:20.220281277
2013/09/18(水) 22:34:14.07ありがとうございます
ちなみに setmetamode bitを設定したLinux Consoleでも無理でした
0282名無しさん@お腹いっぱい。
2013/09/19(木) 13:22:48.710283名無しさん@お腹いっぱい。
2013/09/19(木) 14:08:28.75使ってませんねー
もしそういうことをしたい場合はシェルからscpしてる
netrw経由で直接編集できるけど保存する度にサーバーに送るから遅くてたまらんかった記憶
0284名無しさん@お腹いっぱい。
2013/09/19(木) 23:00:02.690285名無しさん@お腹いっぱい。
2013/09/19(木) 23:03:14.94立ち読みで十分な内容だった。
0286名無しさん@お腹いっぱい。
2013/09/19(木) 23:31:10.900287名無しさん@お腹いっぱい。
2013/09/20(金) 00:37:58.99たしかに突っ込んだ記事じゃないな
これから使い込もうって人にはいいかもしらん。とっかかりとして
0288名無しさん@お腹いっぱい。
2013/09/21(土) 11:58:31.73僕は jellybeans
0289名無しさん@お腹いっぱい。
2013/09/21(土) 12:04:48.85vimだけどねー
0290名無しさん@お腹いっぱい。
2013/09/21(土) 22:02:41.300291名無しさん@お腹いっぱい。
2013/09/22(日) 00:17:21.75eightBitInput: false にしないのはオランダ語とか打つからですか?よくしりませんが。
試したら eightBitInput: false でも LANG=ja_JP.UTF-8 LC_ALL=ja_JP.UTF-8 か
LANG=C LC_ALL=C でうまくいっています。xterm と vim で合わせる必要がありますが。
xterm が ja_JP.UTF-8 で vim が C だとダメですね。
0292名無しさん@お腹いっぱい。
2013/09/22(日) 02:00:23.04ライトなのが好みなのでseashellをカスタマイズして使ってる
0293名無しさん@お腹いっぱい。
2013/09/22(日) 06:55:28.680294名無しさん@お腹いっぱい。
2013/09/22(日) 10:58:51.24neonもなかなか
■ このスレッドは過去ログ倉庫に格納されています