タグ

2016年12月25日のブックマーク (25件)

  • Linuxの不揮発メモリ対応について - Qiita

    (2019/6/12追記) 今なおこの記事を参照してくれる方がいらっしゃるのですが、現在は以下のスライドのほうが情報が新しいです。 記事は残しておきますが、新しい情報はこちらをご参照ください。 https://www.slideshare.net/ygotokernel/nvdimmlinux-137104084 はじめに Linux Advent Calendarの24日目の記事として不揮発メモリの状況について記載したいと思います。今回はkernelのソースの中とかのあまり技術的に深いところは突っ込まず、概略レベルです。(深いところはまだまだ勉強中の身です)。間違いなどがあればご指摘いただけると幸いです。 不揮発メモリとは これまでPCやサーバなどで主記憶装置といえば、電源を停止させたり再起動させるとデータがクリアされる揮発性のRAMが使われて来ました。この主記憶としてのメモリが不揮発

    Linuxの不揮発メモリ対応について - Qiita
  • 折り紙一枚で証明する三角関数の加法定理

    絶対わすれるでしょ. 三角関数の加法定理は,文系でも理系でも,誰しもが高校で習うんですが,意外と図形的な意味を理解してる人って少ないんです. ということで,今回はこの,加法定理を折り紙を使って理解してみましょう. 折り紙を使った証明 例えば,下にこんな折り紙があると考えます. これを,真ん中あたりで折ってみましょう. すると,以下のようになりますね. ここではわかりやすいように,表と裏が違う色の折り紙を使っています. 折り目の長さが1だったとして考えてみましょう. この青い部分の三角形だけ抜き出して考えてみましょう. 以下の図のように,折った角度が角\(\alpha\)だとすると,青い三角形の各辺の長さは以下のようになりますね. 今は,青い部分の三角形だけを抜き出したので,元の場所に戻してあげます. 以下の図に示す場所を角\(\beta\)とします. 小学校で,「三角形の3つの角の和は18

    折り紙一枚で証明する三角関数の加法定理
    lambdalisue
    lambdalisue 2016/12/25
    とてもわかりやすい絵付きで教えやすい!
  • Vim 8.0 Advent Calendar 25 日目 ユーザーをハッピーにする - Qiita

    この記事は Vim 8.0 Advent Calendar の 25 日目の記事です。 長かったこの連載もついに最終回です。 「Vim ユーザーをハッピーにする」 2015 年の年末、Vim に以下のようなコミットが行われました。 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Dec 31 16:10:23 2015 +0100 patch 7.4.1005 Problem: Vim users are not always happy. Solution: Make them happy. Vim ユーザーをハッピーにする、と書かれたこのコミットは、1 つの Ex コマンドを追加するものでした。 :smile :help version8 のページ内の :smile Ex コマンドの説明には、コミットメッセージと同様、以下のようにだけ書か

    Vim 8.0 Advent Calendar 25 日目 ユーザーをハッピーにする - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    一人で25日分お疲れ様でした。為になりました
  • Vim 8.0 Advent Calendar 23 日目 雑多な変更 - Qiita

    この記事は Vim 8.0 Advent Calendar の 23 日目の記事です。 今回は、今までの変更に収まらなかった細かい変更点について見ていきます。 GTK+ 3 GUI として、GTK+ 3 に対応しました。GTK+ 2 と同じように使えます。 +num64 Vim script の整数の型が 64 bit になりました。 利用可能な環境であれば 64 bit になることになっていますが、基的には一般的なほぼ全ての環境では利用可能かと思います。 has('num64') を使うことで、64 bit が有効かどうかを判定できます。 これにより、32 bit による桁溢れなどを利用している一部のプラグインがうまく動作しなくなる可能性があります。 ユーザー定義コマンドでの新しい置き換えテキスト <mods> Vim の Ex コマンドの中には、他の Ex コマンドに前置することで他

    Vim 8.0 Advent Calendar 23 日目 雑多な変更 - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    <mods> 最高やん。バッファ表示系プラグインで方向指定ができるようになる。これは再読必須
  • Vim 8.0 Advent Calendar 16 日目 新しい Ex コマンド - Qiita

    この記事は Vim 8.0 Advent Calendar の 16 日目の記事です。 Vim 8.0 で利用できる新しい Ex コマンドのうち、まだ紹介していないものを紹介します。 :filter[!] {pat} {command} {command} の出力のうち、{pat} で指定した正規表現にマッチする行だけを表示します。[!] を指定すると、逆にマッチしない行だけを表示します。 {pat} は /foo/ のように / などの記号で囲われた形式です。ただし、パターンが記号などを含まない場合は / は省略できます。 以下に使用例を挙げます。 " マークを記録してあるファイルのうち、.txt で終わるものを表示します。 filter /\.txt$/ oldfiles " 読み込まれた Vim script のうち、パスに vimrc を含むものを表示します。 filter vim

    Vim 8.0 Advent Calendar 16 日目 新しい Ex コマンド - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    プラグイン作るときの必須知見だ。読み直す
  • Vim 8.0 Advent Calendar 15 日目 新しいオプション その 2 - Qiita

    この記事は Vim 8.0 Advent Calendar の 15 日目の記事です。 新オプション紹介その 2 です。その 1 に比べると地味なオプション達を簡単に紹介します。それぞれ詳細は help を参照してください。 'renderoptions' (特殊形式文字列) テキストレンダラの設定です。このオプションを設定することによって、Windows ではレンダリングに DirectX を使えます。 また、DirectX に対して様々なオプションを設定できます。 'emoji' (真偽値) オンにするとユニコード絵文字を全角とみなします。デフォルトはオフです。 'langremap' (真偽値) 元々 'langnoremap' オプションがありました。このオプションは真偽値のオプションであったため、これをオフにしようとすると以下のようになります。 これは二重否定でわかりづらい、とい

    Vim 8.0 Advent Calendar 15 日目 新しいオプション その 2 - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    vim-gita の blame で setlocal signcolumn=no したほうが良い感じだ。
  • Vim 8.0 Advent Calendar 13 日目 undo を分割せずにカーソルを移動 - Qiita

    この記事は Vim 8.0 Advent Calendar の 13 日目の記事です。 普段はあまり気にしないかもしれませんが、undo の単位は重要です。この undo について、新しい機能が追加されました。 挿入モードでの操作の分割 挿入モードでの操作中に、<Left> などでカーソル位置を動かすと、undo 情報や . でのリピートが壊れてしまいます。 例えば以下のキーマッピングがあった場合、

    Vim 8.0 Advent Calendar 13 日目 undo を分割せずにカーソルを移動 - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    入力補完系プラグイン作るときに見る
  • Vim 8.0 Advent Calendar 12 日目 連番の生成 - Qiita

    この記事は Vim 8.0 Advent Calendar の 12 日目の記事です。 Vim で連番と言えば今まででも、マクロを使う方法や Vim script を活用する方法などがありましたが、より手軽な方法が追加されました。 g<C-a> g<C-x> コマンド 今まではノーマルモードにて <C-a> <C-x> を実行することで、カーソル位置の数値を増減できましたが、ビジュアルモード中でも同様の操作が可能になりました。 加えて、連番を作り出すための g<C-a> g<C-x> がビジュアルモードのコマンドに追加されました。 使用例 例えば以下のようなバッファがあった場合:

    Vim 8.0 Advent Calendar 12 日目 連番の生成 - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    今までプラグイン使ってたけど不要になりそう良さげ。
  • Vim 8.0 Advent Calendar 10 日目 quickfix に追加された機能 - Qiita

    この記事は Vim 8.0 Advent Calendar の 10 日目の記事です。 Vim 8.0 では quickfix 周りに便利な機能が追加されました。 quickfix の各項目の場所で Ex コマンドを実行する quickfix の各項目に対して Ex コマンドを実行する :cdo Ex コマンドが追加されました。この Ex コマンドを使うことで、quickfix に対する柔軟な操作が可能になります。 例えば、プロジェクトの中から単語 foo を探し、それらを全て bar に書き換えるには以下のようにします。 quickfix 内の各ファイルで Ex コマンドを実行する 上記の例において、検索結果の各ファイルについて複数の結果のデータがある場合に、各ファイルについて何か処理がしたい場合があるかもしれません。この場合に :cdo を使ってしまうと、各ファイルにて結果のデータの数

    Vim 8.0 Advent Calendar 10 日目 quickfix に追加された機能 - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    結構機能追加されてるっぽい。guilt.vim はデフォで quickfix のほうが良いかなぁ
  • Vim の下着で gVim を高速起動する (起動するとは言ってない - Qiita

    この記事は Vim (その2) Advent Calendar 2016 の17日目の記事です。 Vim の起動が遅い? Vim の起動速度が云々という話題が時折あり、自分もなんとなく気になっていました。 闇のプラグインマネージャである dein.vim を試したりもしました。 しかし、聖なる存在である私 anekos とは相性が悪いようで、奇妙な動きに翻弄されるばかり。 不具合報告したくとも、奇怪複雑な動作のため、超面倒くさい! あきらめた! 起動時間はあきらめる 実際のところ、起動速度が遅いというのは、質的な問題ではないはず。 Vim を使いたいと思ってから、実際に使えるまでの時間こそが問題です。 それに、起動時間を短くするために色々考えるのも面倒。 起動しなければ 0 秒? そういうわけで、起動するから時間がかかるので、あらかじめ起動しておくという方針にしました。 つまり、gVim

    Vim の下着で gVim を高速起動する (起動するとは言ってない - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    dein で起動速度十分すぎるから使うことはないと思うけど良さげ
  • Vimでtreeっぽくディレクトリ構成を書きたい、そんなアナタの為のVim Plugin、できてます。 - Qiita

    Vimでtreeっぽくディレクトリ構成を書きたい、そんなアナタの為のVim Plugin、できてます。VimMarkdowntree この記事は Vim (その2) Advent Calendar 2016 - Qiita の15日目です。 こんな時ってありませんか? 記事を書く時に、サンプルディレクトリ構成をtreeで表現したい でも手元のディレクトリは余計なファイルが多い 手元のディレクトリを$ tree | vim - で出力 & Vimで余計なファイルを消す もしくはこんな時ってありませんか? 記事を書く時に、サンプルディレクトリ構成をtreeで表現したい でも手元にいいディレクトリがない ダミー構成を $ mkdir hoge や $ touch hogege- でつくって $ tree > hoge.md で書き出す もっと楽にtreeっぽくディレクトリ構成が書けるVim Pl

    Vimでtreeっぽくディレクトリ構成を書きたい、そんなアナタの為のVim Plugin、できてます。 - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    これ Ascii にも対応すると良さげ。とりあえずメモ
  • Vim の割と新しいおすすめ colorscheme たちを紹介する - Qiita

    Vim (その2) Advent Calendar 2016の12日めの記事です.微妙にパーズの難しいタイトルになってしまいました. さて皆さん,vim の colorscheme は何をお使いでしょうか.定番は例えば jellybeans, solarized, molokai, gruvbox, hybrid 辺りかと思いますが,どれも数年前からの定番ですし,我らが vim advent calendar の歴史を振り返っても,colorscheme の紹介に限って言えば案外記事が多くないのです. 2012年 黒背景好きの僕の心を揺さぶるカラースキーム「hybrid」 | ここぽんのーと 色弱用カラースキーム「color_blind」とカスタマイズの心 | 遥か彼方の彼方から 自分が今まで使ってきたVimのカラースキーマの紹介 (投稿時点ではアクセスできないっぽい) 2013年 オシャ

    Vim の割と新しいおすすめ colorscheme たちを紹介する - Qiita
  • comfortable-motion.vim の紹介 - Yuttieのノート

    この記事は Vim Advent Calendar 2016 の22日目の記事です。 最近のVim/Neovimで導入されたタイマーAPIを活用して、物理シミュレーションによるスムーススクロールプラグインを作ったよ!という内容です。 紹介するプラグイン: https://github.com/yuttie/comfortable-motion.vim 更新情報は末尾に記載しています。 はじめに Vimの効率的な編集操作に惚れてしまい、長くVimを使っています。といっても最近は Emacs 上で Vim と同等の操作(テキストオブジェクトなども含む)を実現する Evil というプラグイン、そしてそれをベースにした Spacemacs という Emacs のディストリビューションも使っていたりして、交互に VimEmacs の世界を行き来するのが数年続いています。(正確には今は Neov

    comfortable-motion.vim の紹介 - Yuttieのノート
    lambdalisue
    lambdalisue 2016/12/25
    良さそう。試してみる
  • Go で Vim プラグインを書く - haya14busa

    この記事は Vim アドベントカレンダー 2016 の21日目の記事です. 最近は Go 言語が大好きすぎて,Vim plugin も Go で書きたい!!! という欲が出てきたので, Vim plugin を Go で書く方法について紹介します. GoVim plugin を書くとは? 一口に GoVim plugin を書くといっても Go で書いたバイナリがメインで Vim script の autoload 関数などから呼ぶ.例: https://github.com/mattn/vim-filewatcher Go 側からも Vim script を呼ぶ,つまり Vim script で Vim の情報を取得するところなど含めて,ほぼ全部 Go で書く. という 2 段階があると思います.記事では2の方法も含めて紹介しますがまずは1から行きましょう. 1. Go

    Go で Vim プラグインを書く - haya14busa
    lambdalisue
    lambdalisue 2016/12/25
    ちょっと実験的に書いてみたい気もするからメモ
  • Vim のマッピングで Fizzbuzz 問題を解く - Humanity

    この記事は Vim Advent Calendar 2016 19日目の記事です。 締め切りがない世界に行きたいと言いつつ、締め切りがなければ何もしないニート根性の tyru です。メリークリスマス!!(錯乱) (レジスタ編) Fizzbuzz 問題のコード 以前私はこんなコードを Gist に投稿したことがあります。 パッと見て何をするコードかわかるでしょうか。 " " doit -> -> getchar:{num} -> fizzbuzz:{type} " nmap <expr> doit join(map(range(1, 100), '"<SID>getchar:entry:".v:val."\<Esc>"'),'') nmap <expr> <SID>getchar:entry [setreg('n', '', 'c'), "<SID>getchar"][1] nmap <ex

    Vim のマッピングで Fizzbuzz 問題を解く - Humanity
    lambdalisue
    lambdalisue 2016/12/25
    狂気を感じる。素晴らしいw
  • Vim のソースのいじり方(:terminal を作るまで) - Qiita

    この記事は Vim Advent Calendar 2016、18日目の記事です。 記事を執筆した2016年12月時点では vim に :terminal コマンドが実装されていませんでしたが、2017年7月に vim 体に :terminal コマンドが実装されました。以下は参考程度に参照して下さい。 はじめに ここ数年で、vim にコントリビュートする方が随分と増えた様に思います。リポジトリが GitHub に移ったのは vim-dev にとっても、そして vim-jp にとっても、やはり良い出来事だったと今更ながら感じています。 しかしながらその動きが遅かった事もあり neovim という派生が誕生する事になります。個人的には neovimエンジニアリングとしては成功しており、悪い事だとは感じてはいません。できれば良い競争相手でい続けられればと思います。 さて neovim

    Vim のソースのいじり方(:terminal を作るまで) - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    Vim のコードいじるときの参考になりそう。良い
  • Vim 8で便利になった組み込みMRU - Qiita

    この記事は Vim Advent Calendar 2016 の 16 日目の記事です。 みなさん、VimのMRUといえば、mru.vimとかctrlpとかunite/neomruでしょうか?あまり知られていませんが、Vim自体にも、最近開いたファイルを記録してくれる機能(MRU)があります。 :oldfiles まずは、:oldfilesコマンド。実行すると、番号とファイルパスの一覧が出力されます。 :oldfiles実行例: 1: ~/.vimrc 2: ~/.vimplugins/vimdoc-ja/doc/tagsrch.jax 3: /usr/share/vim/vim74/doc/syntax.txt 4: ~/Dropbox/memo/2016-12-14.md 5: ~/Dropbox/config_swx-04.txt 6: ~/.vimplugins/vimdoc-ja

    Vim 8で便利になった組み込みMRU - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    denite使ってるから使わない気もするけど素 vim ようにメモ
  • Vimのあまり使われない機能について~暗号化と印刷~ - koturnの日記

    はじめに この記事はVim Advent Calendar 2016の15日目の記事です. 今回はVimであまり知られていない,使われていない機能であると思われる暗号化機能について書きたいと思います. 暗号化機能 Vimはテキストエディタですが,単なるテキストエディットだけに留まらず,テキストファイルを暗号化する機能も備わっています. 編集したテキストファイルを保存するとき,ユーザが指定したキーによって暗号化し,再度そのファイルオープンするときにキーの入力を求めます. そして,オープン時に入力されたキーによって復号化を行うので,正しいキーであれば元のテキストが表示され,異なったキーであればデタラメなテキストが表示されるようになっています. 利用可能な暗号化方式 VIm 8.0の時点では,以下の表に示す3つの暗号化方式が利用可能となっています. 各暗号化方式についての詳細は :h crypt

    Vimのあまり使われない機能について~暗号化と印刷~ - koturnの日記
    lambdalisue
    lambdalisue 2016/12/25
    暗号化知らなかったwww でも neovim に移行したから使えないし、そもそも使わないw
  • VimConf2016の延長線で出来たネタ - derisの日記

    記事はVim Advent Calandar 2016の13日目の記事です。 前置き まずはこの動画を見てください(※私の動画ではないです)。 この動画は先日行われたVimConf2016でt9mdさんが発表されたときの動画です。 vim-mode-plus for Atom editor 私はVimConf2016に参加して、リアルタイムに発表を拝見していたのですが、 発表中「すげー」という単語しか出てこないくらいすごかったです。 言葉でうまく表現するのが難しいですが、すごかったところをざっくり言うと、 Vimの、特にtextobjects、operator周りの考察が深い。 AtomをVim風に操作できるvim-modeというpackage(Vimでいうplugin)をforkしてvim-mode-plusで、Vimの機能を移植するのみならず、様々な独自機能を追加され、完全に独自進化

    VimConf2016の延長線で出来たネタ - derisの日記
    lambdalisue
    lambdalisue 2016/12/25
    知りたかったネタがまとまってて良さげ
  • [Vim/vim-mode-plus for Atom] 秒速で初心者からエキスパートになる。 たった7ステップで。 - Qiita

    vimconf2016の発表で使用したサンプルデモ High speed tour from beginner to expert in 7 steps の抜粋版 ※ step5以降は要 vim-mode-plus ビジュアルモードは知ってるよね? TextObject を使えや もっとええ Operator つかえや Operator と TextObject を組み合わせてみよう Operator の動作を o で変更してみよう. Occurrence に対して、Operate するようになるよ! preset-occurrence を使ってみよう persistent-selection(消えないセレクション)を使ってみよう チュートリアルで使用するテキスト This is 1st paragraph text. 2nd line also include text text tex

    [Vim/vim-mode-plus for Atom] 秒速で初心者からエキスパートになる。 たった7ステップで。 - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    見逃してた記事だった。良い
  • Make Vimmer Happy Again | ラング・ラグー

    稿は Vim Advent Calendar 2016 の12日目の記事です. 今年の9月に Vim 8.0 がリリースされました.これに伴って追加された Vim の新機能は数多くありますが,その中に:smileコマンドというものがあることをご存知でしょうか.私は Yokohama.vim #8 に参加した際に知りました.このコマンドは,実行すると次のような「スマイル」が表示されます. :smileのヘルプを見ると “make the user happy(ユーザを幸せにする)” と解説されています.確かに,これは大変愉快で素晴らしい新機能だと思いました. しかし,惜しいことにこの機能はユーザ(Vimmer)に対する考察がほんのわずかに足りていないようにも思われます.すなわち「ある Vimmer が unhappy なとき,その Vimmer に:smileコマンドを叩く余裕があるだろう

    Make Vimmer Happy Again | ラング・ラグー
    lambdalisue
    lambdalisue 2016/12/25
    普通に面白かったw
  • ここ3年位、真面目にvimをつかってみた感想 - Qiita

    この記事はVim Advent Calendar 2016の8日目の記事です。 初めまして、yamachaaanと申します。 vimに最初に触れたのは、おそらく7年程前だったと記憶しています。 しかし、当時はソフトウェアより、ハードウェアだ!!と息巻いていたので、少し触った程度で放置していました。 その後月日は流れ、3年程前から真面目にvimを使っています。 今回は、私が3年位真面目似vimをつかってみた感想を書いて行きたいと思います。 AdventCalendarも1週間を経過した所ですし、ちょっと箸休め的に目を通して頂ければと思います。 vimを使ってよかったこと vimを使って、良かったことと言えばどの環境でもvimrcさえ用意しておけば自分好み環境を構築できる。という所でしょう。 他にも、全く関係ありませんが、サーバサイドを触っている時に黒い画面でカチャカチャターンっ!してるとモテ

    ここ3年位、真面目にvimをつかってみた感想 - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    3ヶ月に一回 vimtut って発想はなかった良さげw
  • ブルームフィルタ - Wikipedia

    この項目では、確率的データ構造について説明しています。画像にぼかし効果を付加する画像フィルタについては「川瀬のブルームフィルター」をご覧ください。 ブルームフィルタ(英語: Bloom filter)は、1970年に Burton H. Bloom が考案した空間効率の良い確率的データ構造であり、あるデータが集合の要素である(集合に含まれている)かどうかの判定に使われる。ただし判定は正確ではなくて、含まれていないのに含まれていると誤って判定すること偽陽性(false positive)の可能性がある。しかし含まれているものを含まれていないと誤判定すること偽陰性(false negative)はない。なお集合に要素を追加することはできるが、集合から要素を削除することはできない(ただし、拡張をした counting filter であれば削除もできる)。集合に要素を追加していくにつれて偽陽性の

    ブルームフィルタ - Wikipedia
  • Vim scriptのエラーメッセージをパースしてquickfixに表示する - Qiita

    この記事は Vim Advent Calendar 2016 の6日目の記事です。 Vim scriptのエラーが出たときにエラーをquickfixに表示して、エラー箇所に飛べるといいなと思いますが、標準の機能ではないようなので、コマンドを作りました。 先行事例 調べてみると、kanno_kannoさんが書いた記事 Vim scriptをsourceしてエラーがあればquickfixに表示する - ぼっち勉強会 関数対応版:Vim scriptをsourceしてエラーがあればquickfixに表示する - ぼっち勉強会 辞書関数対応版:Vim scriptをsourceしてエラーがあればquickfixに表示する - ぼっち勉強会 や、Stack Exchange Is it possible to populate the quickfix list with the errors of

    Vim scriptのエラーメッセージをパースしてquickfixに表示する - Qiita
    lambdalisue
    lambdalisue 2016/12/25
    プラグイン化されてると便利そう。
  • Vimでファイルを開く方法(基本編) - daisuzu's notes

    この記事はVim Advent Calendar 2016の4日目の記事です。 Vimでファイルを開くのに Unite.vim Denite.nvim ctrlp.vim など のプラグインを使っている人はたくさんいると思います。 これらのプラグインは大変便利なインターフェースを提供してくれているのですが、 依存しすぎてしまうと標準機能でファイルを開く方法を忘れてしまうかもしれません。 ...さすがにそんなVimmerはいないと思いますが、ファイルを開く コマンド キーマッピング をおさらいしてみましょう。 コマンドで開く 以下のコマンド*1の引数としてファイル名を指定します。 コマンド 説明 :e[dit] 現在のバッファでファイルを開く :sp[lit] 水平分割してファイルを開く :vs[plit] 垂直分割してファイルを開く :tabe[dit] 新しいタブページを作成してファイル

    Vimでファイルを開く方法(基本編) - daisuzu's notes
    lambdalisue
    lambdalisue 2016/12/25
    new | r! ... なるほど。Vimfiler と denite と gita 使ってると不要だからそういう方法は思いつかなかった。