サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
画力アップ
blog.basyura.org
ローカルで作成した branch は remote に push しないと他の人から見えない。remote から clone したリポジトリは何もしなければ master ブランチしか見えない(ように見える)。 remote に branch を push し、remote から clone したリポジトリの branch を変更して push するまでの操作。 ローカルにリポジトリを作成する $ mkdir sandbox $ cd sandbox/ $ git init Initialized empty Git repository in /repos/sandbox/.git/ $ touch README $ git add . $ git commit -m "first commit" [master (root-commit) d31404a] first commit 0
Vim Advent Calendar 2011 30 日目の @basyura です。 ujihisa.vim #2 で発表した TweetVim をリリースします。リリースといっても vim.org に登録したわけでも(ドキュメントの関係で・・・)、初めて公開するわけでもありません。一つの区切りとして広報します。 TweetVim とは? https://github.com/basyura/TweetVim pure Vim script で動作する twitter クライアントです。 vim 上で動作する twitter クライアントといえば TwitVim が既にありますが ruby、python、perl といった拡張機能を使用するため、特に Windows では環境構築に苦労します。TweetVim も正確には http リクエストを投げるための cURL が必要ですが、Tw
そこで、「Vrapper」さんの登場ですよ! Eclipseのエディターがvim風のキーバインドで使えます。しかも、Eclipseの補完機能なども同時に使えます! Eclipseのキーバインドをvim風にできるVrapperが素晴らしすぎる件について 確かに Vrapper すごい。 viPlugin は「補完がうまく働かない」「補完機能が同時に使えない」ってのはよく分からないけど(自分は困ったことないから)。 最近は vimrc をいじることが多くなり、より使いやすいキーバインドを求めていくにつれて eclipse + viPlugin 時のキー誤爆率が上昇しっぱなしでげんなりしてた。 viPlugin で一番困るのが inoremap と nnoremap を別々に定義できないこと。viPlugin が用意しているもの以外は eclipse のキー設定だのみなので i だろうが n だ
美しくないコードをuncodeとかクソースなどと呼ぶ人もいるようですが、これらの言葉は開発者を傷つけるので、最近アプレッソでは、あまり美しくないコードを「ひよコード」、美しくない箇所は「ここがピヨピヨしてる」と表現するようにしています。未熟だけど伸び代はあることを意味しています。— 小野 和俊/Kazutoshi Ono (@lalha2) 2012, 7月 5 僕の代から新人研修で java が扱われるようになり、実務も java から入った(のは僕だけだったけど)。周りに java が書ける人といえば同じ研修を受けた同期(みんな怪しい)と独学でやっていた先輩が一人ぐらいだった。プログラムを書いている人はいても VB or Cobol or 汎用機な人たちばかり。先輩と言っても採用しない時期があったとかで 1つ、2つ上の先輩は数えるほどしかいない上に同じオフィスにはほぼいないし、その上の
fuf から unite.vim に乗り換え。netrw から vimfiler.vim へ。 会社で使いながら色々メモってたんだけど、持って帰る(evernote に貼り付ける)のを忘れてしまった。思い出しながら家で触ってみる。 一番気になるのが軽さ。 Windows + kaoriya 版 gvim と mac + MacVim で、天と地ほどの差がある(マジで)。 MacVim の方が 何倍も軽い。何でだろう。Windows は Pentium4 3.2GHz で、Mac は Core2Duo 1.6GHz。どちらかが飛び抜けて早いとも思えないし遅いとも思えない。Core2 のおかげにしては違いがありすぎる。 gvim だと mru_file で歴が 30 ぐらいで怪しくなって、g:unite_update_time を 1000 にして良くなった。その後、100 ぐらいになると一覧
快適。「補完候補の自動表示」&「自動選択」&「Enter で補完確定」にしたらめっちゃ快適。eclipse ライクになった(おい)。動作も早くなってる。 気になるのは print (メソッド名)と打って次に改行したい場合に print()と補完候補が出て自動選択されてると、改行のつもりが () が入っちゃってアッーってなるところくらい。 でキャンセルすればいいだけなんだけど。 キーワードの先頭文字列をちょこっと打って Enter で確定していくのが気持ちいい。設定はこんな感じ。 " 起動時に有効 let g:neocomplcache_enable_at_startup = 1 " snippet ファイルの保存先 let g:neocomplcache_snippets_dir='~/.vim/snippets' " dictionary let g:neocomplcache_dict
fuf → unite に乗り換えて1日目の続き。 7.3 にした方が断然快適。kaoriya へのこだわりが特に無ければ「vim UTF-8日本語版(http://sites.google.com/site/fudist/)」というのもある。 以前(fuf)はブックマークを多用してたけど、vimshell でディレクトリ移動(*)が基本になったので helpファイルなどを登録しておく程度になった。だいたい file_mru で開くけど。(*) alias 便利、/ 補完超便利。cd 打たなくてもディレクトリ名で移動できるのも超便利。 Unite はもっぱら file_mru と buffer を使いまくり。これがないと仕事にならない。do_action の使いどころがいまいちなく above をマッピングしてたまに使う程度。Unite buffer file_mru bookmark f
あけましておめでとうございます。今年もよろしくお願い致します。 _(_ _)_ この記事は Vim Advent Calendar 2012 : ATND の37日目の記事です。前日は、 @ShougoMatsu さんの 暗黒美夢王が紹介するエディタアニメ 2012+おまけ でした。 (´ー`)。o O (やばいですね) redmine クライアント まだまだ中途半端な状態ですが、新規に redmine クライアントを作ってみたので紹介します。 以前にも redmine クライアントである unite-yarm.vim を作っていて・・・ redmine のチケット一覧を表示する unite-yarm を作ってみた https://github.com/basyura/unite-yarm 地味に機能追加して使ってたんですけど コメントの表示、登録ができない priority とか sta
Vim advent calendar 190 日目です。 昨日は @yoshikaw さんの「vcscommand.vimを少し便利に使う」でした。 毎日 Vim してますか? 僕は Vim のしすぎで仕事が手につきません。ビルド時間の合間にイジイジしすぎてやばいです。そんな時間を作ってしまうビルド時間が悪いんです。その上、先週は後半から会社を休んで会議に出席したものの、全くついていけなくて方針状態でした。しかし、それもあって会議中は vim script の作成がはかどってしまったため、ようやく待望の機能を追加することができました。後悔はしていません。 ということで TweetVim 2.1 をリリースします。一部実験的な機能を含みます。 https://github.com/basyura/TweetVim 変更内容 has('gui_running') じゃない時に icon 表示
prototype を知らずに作って今に至る某システム。レスポンス問題が再燃したので prototype の使用有無でどれだけ違うのかちょっと比較してみた。 簡単なオブジェクトを new で生成する場合の速度比較 this.xxx を使ってグローバルな関数をメンバ(オブジェクトの外部からアクセスできる関数)として定義する this.xxx を使って内部関数をメンバとして定義する prototype を使って一つずつ関数を定義する prototype を使って一度に関数を定義する 1. this.xxx を使ってグローバルな関数をメンバ(オブジェクトの外部からアクセスできる関数)として定義する var count = 100000 var start = new Date(); function Test1(a , b , c , d , e ) { this.a = a; this.b =
colorscheme を wombat から newspaper に変えて 1 年ちょい経過。飽きてきたので新しい colorscheme をと思って探したのだけどコレといったものが無いので再度 wombat に戻ることにした。 colorscheme を変えるのはコマンド一発なのだけど、plugin で定義されてる色とか wombat そのままじゃなくて一部変えたいとかあるので直し始める。g:colors_name を if 文で判断して colorscheme 個別の設定を上書きしていたのだけど、if 文構造がものすごく読みづらいので colorscheme ごとに定義を分割しはじめる。現在の colorscheme によって読み込む定義ファイルを切り替えることで vimrc をスッキリさせることに成功。ついでに plugin ごとの設定や、platform ごとに固有に書いていたも
https://github.com/basyura/unite-rails (unite-history をパク参考にしました) 前々から作りたいと思いつつ、いい案が浮かばないまま放置していたけど作り始めてみる。 動作は至って普通の unite で、カレントディレクトリが rails プロジェクト内であれば「models」「controllers」「views」などにあるファイル一覧を表示して選択できる。 :Unite rails/model :Unite rails/controller :Unite rails/view :Unite rails/helper :Unite rails/mailer :Unite rails/lib :Unite rails/db :Unite rails/config :Unite rails/log :Unite rails/javascript
mixi さんのオサレーな会場で行われた ujihisa.vim #2 に参加して LT(?) してきました。 LT - my unite plugins my unite plugins View more presentations from basyura LT 枠で応募して 5 分の予定がスライドを作ったら 10 分に。当日は 15 分かかってた (汗)。 内容は、今まで自作してきた unite.vim のプラグインを中心に駆け足で紹介していくものです。 unite-yarm unite-hiki unite-uiki unite-rails unite-twitter rubytter.vim twibill.vim TweetVim.vim 緊張しましたが、今までの自分の活動を知ってもらえたこと、鳥取を紹介(?)できたことに満足しています。 TweetVim くいつきが良かった
Terminal.app のメニューから変更するのだと思ったら違うのでびっくり。システム環境設定のキーボードとマウスから変更するとな。 screen がいいんだろうけど、☆ とか書いちゃうと表示が崩れちゃうので Terminal.app のタブ機能を使うことにした。変えたいショートカットキー C-l : 次のタブを選択 C-h : 前のタブを選択 C-n : 新規タブ以下手順 変えたいショートカットキーの名前を確認する 「次のタブを選択」「前のタブを選択」を変更したい。 キーボードとマウスから変更 システム環境設定にあるキーボードとマウスを選択し、キーボードショートカットを選ぶ。「全てのアプリケーション」を選択した状態で「+」をクリックする。 違った。「全てのアプリケーション」は文字通り全てのアプリケーションに影響する。選択状態は関係なくて、次の画面で選んだアプリケーションが追加される。
会社の Bitnami (Redmine) が 2.5 で古いのだけど Bitnami は一度アンインストールしてからインストールする必要があるようだったので放置してた。3.2 になるに至っていろいろ機能追加されてきた機能が欲しいというリクエストをもらったのでアップデート。vmware の windows で何回かアップデートの練習をしたおかげか特に問題なく終わった。後は、本体に直接入れていた修正をそのまま当て直すか、plugin 化するかが残っている状態。 以下アップデートのメモ 2.5 をアンインストール 念のためBitnami のルートフォルダからバックアップしておく。MySQL のデータはダンプしておく。 プログラムの追加と削除に登録されていないので (2.6 にはあった) インストールフォルダに有る uninstall.exe から実行 「データも全て削除」を選択 レジストリキー
理由 7.3 の patch が 1000 を越えても、7.4 が正式リリースされても乗り換えなかった理由。 neocomplcache で g:neocomplcache_enable_auto_select = 1 にしても選択状態が維持されない 僕としては結構深刻な理由。自動補完に便りっぱなしな上に、該当する候補に絞られたら Enter で楽ちんぽんだったのが、<C-n> で選択しなおして Enter というのはテンポが悪い。非常に悪い (Enterはいらないけど、慣れで押してしまう)。 なんで選択されなくなったのかはよく分からなくないのだけど、 パッチバージョンがいつの頃からかはわかりませんが、補完候補の絞り込みを行った時に、第一候補の選択状態が継続されません。 補完候補の絞り込み時、第一候補の選択状態が継続されない と issue が上がってる通り、何かしらの変更が影響されている
コミッター 圧巻だったなぁ。これを見てるだけで wktk した。 vim @sandinist と参戦。隣の部屋(emacs)と宗教戦争が始まるんじゃないかってぐらい人が殺到。@kana1 さん焦ってた。 椅子を隣から運んできてもらったりしてようやく着席(このとき、参加者がもっと動いて環境を作れと角谷さんに怒られる。ごめんなさいごめんなさい)。そしたら隣が @ShougoMatsu だった!日頃の感謝を直接述べる。うん、会えて良かった(けっこう年上なんじゃないかと想像してたのは内緒)。 @kana1 は攻撃的なイメージがあったんだけど(blogとかコメントとかで)、良い人そうだった(失礼な言い方だけど)。僕の初歩質問にも丁寧に答えてくれた。ありがとうございます。 消えろnetrw!! autocmd FileType netrw setlocal buftype=nofile bufhid
WIndowsTerminal + GitBash で zsh を使っているのだけど、たまにタブのタイトルが変わったまま戻らなくなる。気にしなくても困ることは無いのだけど、気持ちが落ち着かないので気楽に戻したい。通常は zsh のタイトルがついてる。 関数を定義すればいいだけだった。 function title() { echo -ne "\033]0;$1\007" } 使い方 $ title zsh べんり。 ちょこちょこ作っては止まるを繰り返し中。tweetvim を作ってるときは謎のモチベーションがあったけど、今回はこれだけ動けばーで終わることが多い。今の主目的は tweetvim が動かなくなった結果、愚痴的なものを垂れ流す場所が無くなったことの代替。 Vim script だけで完結しても良かったのだけど、denops がおもしろそうだったので api 部分に使用。バッファへ
Apple Wireless Keyboard (JIS) MC184J/B Apple(アップル)Amazon 会社の windows マシンで使うつもりが、windows になじまず長らく放置していたキーボード。席替えがあったし、キーボードのケーブルが邪魔になるしで再挑戦。結果的には十分に違和感なく使えるまでいけたので、対応内容を以下に書く。 AutoHotKey Fast scriptable desktop automation with hotkeys AutoHotKey レジストリを汚さずにキーを押下した際の動作を変更できるツール。自分で設定ファイルを書いて exe に食わせる。 #InstallKeybdHook #USEHOOK ;Apple英数 -> 無変換 sc071 Up::Send,{vk1Dsc07B Down}{vk1Dsc07B Up} ;Appleかな -
便利ですよね、プロパティ。 public class Person { public string FirstName { get; set; } public string LastName { get; set; } public int Age { get; set; } } って定義すれば。 Person person = new Person() { FirstName = "hogemura", LastName = "hogeo", Age = 20, }; ってできるし、プロパティは public な変数じゃなくて、 Getter Setter の代わりなので呼び出し元の IF を変更させることなく変更することができる。 public class Person { private string _firstName = null; public string FirstNa
整理中。 「特異」って言葉に慣れてないので想像しにくいのだけど、 1 特別に他とちがっていること。また、そのさま。「彼はこの会社では―な存在だ」 2 特にすぐれていること。また、そのさま。「―な才能の持ち主」 特異 マニュアルにある言葉をひっぱってくると 特異メソッドは特定のインスタンスに固有のメソッド 特異クラスはある特定のオブジェクトだけのための仮想的なクラス クラスメソッドはクラスの特異メソッド モヤモヤ。 言葉の定義はモヤモヤするのだけど、 rails みたいに拡張しまくるプログラムを書くためには何がしたいかっていうと、 動的に、インスタンスにメソッドを追加したい 動的に、クラスにメソッドを追加したい 動的に、クラスにクラスメソッドを追加したい になる。動的に追加するには、特異クラスを使うことが多い(のだと思う)。 class << self # 本文 end 上記のように定義文の
なんでこんな UI なのか。 フィルタ条件のチェックを全て外す。 保存する。 新しいクエリ作成画面に移るので「規定の項目」のチェックを外すと下にカスタムフィールドを含んだ項目の一覧が表示される。カスタムフィールドを追加する。 カスタムフィールドを追加したら保存をする。 チケット一覧にカスタムフィールドを表示することができた。 作ったクエリは画面の右に表示される。クエリ作成の際に「公開」にチェックを入れておくと他のユーザも使うことができる。 これを一発で分かる人はいないと思うんだけど。最初から「新しいクエリの作成」リンクをどこかに貼っておいた方がまだ親切。 Redmine.JP に一応説明がある。 フィルタの適用と保存 チケット一覧はデフォルトでは未完了のチケットを表示します。 標準のフィールドおよび カスタムフィールド がカスタムクエリを作成するのに利用できます。フィルタをセットしたら、「
webapi-vim を用意する。 webapi-vim: Vim Interface to Web API Description: Interface to WEB APIs. Currently this library support following protocols. * Basic HTTP * OAuth * Atompub * SOAP (in progress) This library include: XML Parser BASE64 Hash Algorism SHA1 Hash Algorism HMAC HASH Algorism webapi-vim 更新する。 call http#post('http://localhost:3000/issues/1.xml?key=YourAccessKey' , '<issue><description>hog
windows7 + cygwin + rvm の組み合わせにしてから出始めた unable to remap 446892 [main] ruby 9992 fork: child 8044 - died waiting for dll loading, errno 11 4511203 [main] ruby 10036 C:\cygwin\home\Administrator\.rvm\rubies\ruby-1.9.2-p180\bin\ruby.exe: *** fatal error - unable to remap \\?\C:\cygwin\home\Administrator\.rvm\rubies\ruby-1.9.2-p180 \lib\ruby\1.9.1\i386-cygwin\etc.so to same address as parent: 0x330000
Rails3 β がリリースされたので久々に rails コードを書き始めてみると「あれ、この api を呼び出した結果はどういうインタフェースを持ってるんだっけ?」の連続で RDoc を見てみたり Web で検索してみたり、ソースを読んでみたりの繰り返し。趣味だから楽しいんだけど、これが仕事だらげんなりするなぁ。 動的言語は動かしながら作れるから開発が速いかもしれないけど、静的言語は動かさなくても読めるからいいんだよな。汚いコードでもなんとかなったりする。半分以上 eclipse のおかげだけど、補完を使ってメソッドを調べられるのは非常に強力。元が汚くてもリファクタリングしやすいからキレイにできる。 Rails なんかは少人数でスキルの有る人が「ガンガンいこうぜ」するときはすごい武器になると思うけど、割と人数がいて「みんなガンバレ」ときどき「いのちをだいじに」なプロジェクトの場合は Ja
Redmine がもうすぐ Ruby 1.9.3 に対応しますね。次のステップは Rails 3 系への対応ということで楽しみだ。ただ、動かなくなるプラグインがゴロゴロ出てくるんじゃないのかなぁという印象。 ということで?チケットの歴にコメントだけ表示するプラグインを作ってみた。 https://github.com/basyura/redmine_comment_only before after なぜ作ったか Ruby Issue Tracking System みたいに不特定多数の人にチケット登録されて、それをコメントで議論していくスタイルはなかなか社内プロジェクトにはマッチしないのではないのかなぁと思う。 社内プロジェクトではコメントを使って複数人で議論するのは効率が悪いし、最終的にそのチケットをどうクローズしたのかを知るために歴を追うのも効率が悪い。なので、 チケットを登録 担当
レンタルサーバで rails 使えなくても 、同じ url ルールで mvc したい。 dispatcher - gup.cgi #!/usr/local/bin/ruby require 'cgi' print "Content-type: text/html\n\n" cgi = CGI.new info = cgi.path_info.split("/") info[2] = "index" if info.length < 3 || !info[2] load info[1] + ".rb" app = eval(info[1].capitalize + ".new") app.instance_variable_set("@params" , cgi.params) app.__send__(info[2]) exit コントローラ - test.rb (今のところ v も一緒)
順調にコミットしてたつもりが、「ん?別の方法の実装のほうが良かったんじゃないか?」と試したくなることがしばしばある。でも、歴史は進んでしまっている・・・どうしよう。といった場合の話。 ○ 5f55627d5b9ba04cfd81d4a553bd1b93af245c89 │ ● 336e00890fc03ba55563998d7459771649fb46b5 │ ○ 475199210277497db63b290b5819f5cc3dd0e4d3 │ ○ 76d6180f679d8115291df66ac4f80215e6286877● からブランチを作りたい場合 git checkout -b branch_name 336e00890fc03ba55563998d7459771649fb46b5適当にコミットしたとすると ○ 5f55627d5b9ba04cfd81d4a553bd1b9
basyura : Unite buffer buffer_tab のバッファ番号の非表示オプションが欲しいです・・・。 ファイルを選ぶときに視線が定まらない(ぶれる)んですよね・・・ Shougo : オプ……ション? わたしはおぷしょんがきらいです 特にオン・オフ系のオプションはきらいです。 だから、却下としたいところですが、今回はカスタマイズのヒントを教えましょう。 こんなときに便利なconverter。 buffer sourceに対して、バッファ番号非表示のconverterを適用するように custom_filter()で設定してしまえば良いのです。 もちろん、そんなconverterがデフォルトで用意されているはずはないので、 自作する必要はあります。 unite#define_filter()もあるし、basyuraさんなら楽勝ですよね!てことで lingr で却下されたけ
次のページ
このページを最初にブックマークしてみませんか?
『basyura's blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く