サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Switch 2
liosk.blog103.fc2.com
2015-02-16 カテゴリ: Client Side タグ: Tips Linux Zsh コマンドの結果を画面とパイプの両方に流す方法をいくつか調べたのでメモ。 やりたいのは、以下のような処理でpbcopyに渡った標準出力を、画面からも確認すること。 find . -type f | pbcopy なお、pbcopyは標準入力をクリップボードに送るOS Xのコマンド。 方法1. Multios zshなら、画面に出力するだけであればとても簡単。以下のように、標準出力を標準エラー出力にリダイレクトするだけでよい。 find . -type f >&2 | pbcopy zshでは、Multiosという機能のおかげでリダイレクト先を複数個指定することができるので、標準エラー出力へのリダイレクトとパイプへの出力が同時にできる。 zsh: 7. Redirection 7.2 Multios
2011-05-09 カテゴリ: その他のプログラミング タグ: Tips Linux Zsh 車輪の再発明 トラックバック Git zshのプロンプトに、Gitのブランチ名を表示させたくなった。 ちょうど、↓の図のような感じに。 bashではgit-completion.bashで定義される__git_ps1を使って、例えば↓のような感じで書いていたけど、 # Show git branch name if [ -n "$(type -t __git_ps1)" ]; then PS1='\u@\h \w$(__git_ps1)\n\$ ' fi zshではvcs_infoという関数を使って実現するらしい。 vcs_infoはGitに限らず、各種のVCS (Version Control System)に対応しているようなので、一度設定しておけばCVSやSubversion、Mercur
ウェブサイトを移転しました 2023年10月1日、ヤフーとLINEは合併し「LINEヤフー」となりました。 これに伴い、Yahoo!広告サイトはLINE for businessと統合し、 新しいウェブサイト「LINEヤフー for Business」へ生まれ変わりました。 https://www.lycbiz.com/jp/service/yahoo-ads/ 新しいドメインのページに移動する場合は、以下のボタンをクリックしてください。 新サイトへ移動する
2010-07-27 カテゴリ: Client Side タグ: JavaScript UUID アルゴリズム 以前公開したまま放置していたJavaScript用のUUID生成ライブラリ、UUID.jsの最新バージョンを公開しました! 大幅な機能追加とバグ修正が行われて、ホスティング先もCodeReposからGitHubに変更されました! LiosK's UUID.js at master - GitHub UUID.js: The RFC-compliant UUID generator for JavaScript. ↓こんな感じのRFC 4122に準拠したUUIDをJavaScriptで簡単に生成することができます! 368606ed-98b5-11df-8fd2-0ba59ea365b9 UUIDは大量に生成しても重複が起きないように工夫されているので、中央で統制を取らなくとも一意
2010-11-13 カテゴリ: 雑記 タグ: Tips Ubuntu Namazu KAKASI 日本語 検索 UbuntuサーバーにNamazuの全文検索機能を導入してみた。 ゴールとしてはHTMLのインターフェースからサーバー内のテキスト、Word、Excel、PowerPoint、PDFファイルなんかを日本語全文検索できるようにすることだけど、とりあえずコマンドラインから対象のファイルを日本語全文検索できるようになったので、その過程をメモ。 日本語対応周りで嵌らなければ特に設定とかすることもなくて楽チン。 必要なパッケージのインストール まずはNamazuのインストール。 sudo aptitude install namazu2 namazu2-index-tools 検索用のnamazu2とインデックス作成用のnamazu2-index-toolsをインストールする。 続いて、
2010-11-06 カテゴリ: 雑記 タグ: Kindle 自炊 PDF BOOKSCAN 電子書籍 Kindle 3買っちゃった! 買ったのは6インチWi-Fiモデルで、Amazon.comで送料手数料込みで167.98ドル。1ドル82円なら1万4千円を切るくらい。 [追記 (2011-02-12)] 購入したときにとられた輸出手数料8ドルが全額返金された!まさか返金されると思ってなかったから感動! 10月30日に注文して11月4日に届いたので中4日。国外から発送されていることを考えるととても速い[1]。 主にBOOKSCANでスキャンしてもらったPDFをKindleで表示してみて、色々と感動したので簡単にまとめとレビューをしてみる。 詳細は続きで。 到着 箱を開けたところ。 透明なフィルムが貼られているけれど、画面に見えるのはフィルムではない。KindleのE Inkは電源を切っても
2009-12-23 カテゴリ: Client Side タグ: Rosids Windows NTFS Python お知らせ タイトルの通り、NTFSハードリンクを使って増分スナップショットを作成するバックアップツールを作ったので公開します。 LiosK's Rosids-Backup-Tool at master - GitHub Rosids is a snapshot-style backup tool written in Python 3, emulates the things like pdumpfs, `rsync --link-dest' or Apple's Time Machine on Windows using NTFS hard links. Rosidsは指定したフォルダのスナップショットを作成するだけの単純なバックアップツールですが、NTFSのハードリン
2008-03-16 カテゴリ: Client Side プログラマの壁 - あどけない話 FizzBuzz が数分で書けないのなら、プログラマにはなれないでしょうね。 ということだったので、少し焦ってFizzBuzzを書いてみた。JavaScriptで。 for(i=0;i++<100;print(i%5?s||i:s+'Buzz'))s=i%3?'':'Fizz' 本気で最短を目指してみた。 その甲斐あって、anarchy golfというサイトのFizzBuzz - JavaScriptでは一位タイの短さにできた。 わーい 動作サンプルは続きで。 動作サンプル for(i=0;i++<100;print(i%5?s||i:s+'Buzz'))s=i%3?'':'Fizz' 出力 関連記事 [メモ][Java][JavaScript] ユークリッドの互除法 Perlを書くようになったなぁ
2010-07-19 カテゴリ: Client Side タグ: JavaScript トラックバック JavaScriptのnewって何?一体何なの?という話 - 愛と勇気と缶ビール クラスってものはJavaScriptにはないはずなのに、 new ClassName();と書くとあたかもClassNameクラスのオブジェクトのインスタンスが生成され、それが返ってくるかのような挙動をしている。 これは気持ち悪い。言語仕様としてはクラスは本来存在しないのに、クラスのようなものが導入されている。まともな神経を持った人間なら、一体 new演算子って何なの?という疑問を持つのが当たり前である。 こんな扱いを受けているnewがあまりにも不憫で涙した>< newはprototype-basedなJavaScriptを書くための唯一の手段[1]で、真にJavaScriptらしいコードを書くためには欠か
2010-06-03 カテゴリ: Client Side タグ: JavaScript Tips アルゴリズム 前回の記事で予告したとおり、今回はJavaScriptのMath.random()で生成できる乱数の精度の話。 前回の記事で、JavaScriptでは2^53未満の正整数を扱うことができるということがわかったから、今回の記事では2^53未満のランダムな正整数を生成してみる。 具体的には↓のようなコード。 var ub = Math.pow(2, 53), list = []; for (var i = 0; i < 16; i++) { list[i] = Math.floor(Math.random() * ub).toString(2); while (list[i].length < 53) { list[i] = "0" + list[i]; } // padding }
2010-05-30 カテゴリ: Client Side タグ: JavaScript Tips 久しぶりにJavaScript (というよりECMAScript) のネタ。今日はECMAScriptで扱える整数と乱数について。 ECMAScriptの数値 (Number) はIEEE 754の倍精度浮動小数点数であると仕様書に明記されている。 ECMAScript Language Specification 5th edition 4.3.19 Number value primitive value corresponding to a double-precision 64-bit binary format IEEE 754 value. (強調は引用者) ECMAScript Language Specification 3rd edition 4.3.20 Number Ty
2017-11-19 カテゴリ: Client Side タグ: Tips Python Jupyter データ分析 車輪の再発明 最近、データ分析の関係で少しPythonを使うようになったので、改めて環境構築について考えてみた。 ネット上の情報を漁ってみると概ねAnaconda一択というのが最近のトレンドの様子。確かにWindowsならAnaconda一択だろうし、自分自身、色々と説明するのが面倒だから、初心者に教えるときはとりあえずAnaconda入れておけと言ってしまう。 とはいえ、モジュールのインストールにはpipがあるし、仮想環境を使いたいならvenvを使ってしまえばいい。そもそも、今どき開発目的であればdockerなりvagrantなりを使って丸ごと分離してしまう方が筋が良く、データ分析用途であれば手元に最新のPython3環境があれば事足りる。MacでAnacondaを入れよ
2010-03-16 カテゴリ: 雑記 タグ: Tips iPhone Apple KeePass XML XSL [追記 (2013-03-10)] Keeperがカスタムフィールドに対応したので、XSLスタイルシートを修正して、改行を含まないカスタムフィールドはKeeperでもカスタムフィールドとして扱えるよう修正しました。この記事内のXSLスタイルシートは最新版に差し替えられています。 [追記 (2011-02-27)] KeeperがURLフィールドとアプリ内ブラウザに対応したので、XSLスタイルシートを修正してURLフィールドをメモ欄から独立させました。 KeePass Password Safeはさまざまな機能を持ったオープンソースのパスワードマネージャーで、Windowsの他にMacやLinuxでも使うことができる便利なソフトウェアです。 僕はKeePassを使うようになって
2009-12-19 カテゴリ: Client Side ちょっとした用事があって、16文字のランダムなひらがな列を生成する単純なBookmarkletを書いたのでメモ。 Bookmarklet (function(lb, ub, n) { var cs = Array(n), span = ub - lb + 1; for (var i = 0; i < n; i++) { cs[i] = lb + Math.floor(Math.random() * span); } return String.fromCharCode.apply(String, cs); })(0x3041, 0x3093, 16) ソースを見ればわかるとおり、16文字という文字数はコードの最後に指定しているので、そこを書き換えれば任意の長さのひらがな列が生成できます。 ひらがなの範囲は、Unicodeのひらがなの
2010-02-02 カテゴリ: Client Side タグ: JavaScript トラックバック JavaScript基礎文法最速マスター - なんとなく日記という記事がはてブ界隈で話題になっていたので、徒然なるままに読んでみて心に浮かんだことをそこはかとなく書きつけてみる。 まず、どうでもいい細かい点につっこみを入れておくと、「callとapplyは外せないでしょ?」とか「undefinedに限らず、かなりの数の値がオブジェクトではないですよ [注1]」とか「"use strict";してるとhoge();の形で呼び出された場合はthisは window (グローバルオブジェクト)にならないらしいですよ[注2]」とか「for in文ではまりがちな落とし穴って配列走査周りじゃね?」とかいろいろあるんだけど、まあこの辺は別にどうでもいいや。 気になったのは、クラス定義の解説のセクション
2009-09-29 カテゴリ: Client Side タグ: Vim Tips XMLやHTMLの5つの特殊文字 (&, <, >, ', ") を定義済みのエンティティ (&, <, >, ', ") に変換するVimスクリプトを書いてみた。 5つの文字を置換するだけだから簡単そうに思えるけど、選択範囲だけを対象にしようとするとなかなか難しくて、今まで納得のいくものを作れずにいた。それが、たまたま今日挑戦してみたら、そこそこいい感じのスクリプトが書けたので、記念にブログポストしてみる。 vnoremap <Leader>e "xx:call <SID>EscapeXml('x')<CR>"xP function s:EscapeXml(regname) let x = getreg(a:regname) let x = substitute(x
2009-10-20 カテゴリ: Client Side タグ: Tips Windows NTFS 諸事情あってNTFSについて調べたので、自分なりに理解したところをメモ。 基本的には、 How NTFS Works: Local File Systems NTFS - Wikipedia, the free encyclopedia の二つのサイトに書いてあることから必要な部分を抜粋しているだけだけど、説明を省略してる部分もあるし間違ってる部分もあるかも。 ファイルはMFTレコードとして表現されている NTFSのファイル情報はMFT (Master File Table)というリレーショナルデータベースに記録されている。 MFTはファイルレコードを行として持ち、ファイル属性 (attributes) を列として持つ。(=> ファイルレコードはファイル属性の集まりである。) ファイルやフ
2009-08-06 カテゴリ: Client Side タグ: GnuCash Perl Git ライブラリ 会計 投資 一ヶ月以上前に作ったまま長いこと紹介せずに放置していたので、そろそろ公開しようと思う... LiosK's Finance--Quote--YahooJapan at master - GitHub A Perl module that enables GnuCash to get quotes of Japanese stocks and funds from Yahoo! JAPAN. GNUプロジェクトの財務管理ソフトウェアであるGnuCashには、Web上のデータソースから株式や投資信託の価格を自動で取得する便利な機能がついています。 Features | GnuCash (投資ポートフォリオに関する機能を抜粋) Stock/Mutual Fund Portf
2008-02-27 カテゴリ: その他のプログラミング タグ: ○○で文系論文を書いてみる TeX LaTeX Tips 環境構築 以前、DocBookで文系論文を書いてみるというようなこと言っていたが、結局それは断念してしまった。FOPの日本語組版のレベルが低すぎて使い物にならない上に、DocBook XSLも基本的には英語圏向けであまり日本語環境に向いているとは言えなかったから。なので、結局はTeXを使ってレポートを書くことにした。今さらTeXというのも古臭い感じがして嫌なのだが、他に良い選択肢がないので仕方がない。 ということで、今度はWindows XP上にLaTeX環境を構築するにあたってのメモ書きを残しておこうと思う。 ちなみに、TeXに入門するまでの間に、86世代の人たちにだいぶお世話になった。この場を借りて感謝。 続きを読む コメント (3) トラックバック (0) Tw
2009-03-20 カテゴリ: Client Side タグ: Tips Linux Ubuntu 前回の更新からだいぶ時間が空いてしまった。FC2ブログでは一定期間記事を投稿していないと広告が入ってしまうようなので、メモ代わりのエントリーをポスト。 前回のエントリーでは、自分のPCにUbuntuを導入した話などをしたけど、結局、ごちゃごちゃとしているGNOMEが嫌になって、Xubuntuに乗り換えた。 Xubuntuはとても軽快なので満足しているんだけど、エフェクトとかがまったくなくてさびしいので、Compizを導入してみた。 「XubuntuにCompizなんて入れたら、せっかくの軽快さが台無しじゃんw」というツッコミはとりあえずスルー。 XubuntuにCompizを導入する Xubuntu + Compiz = Pretty pretty Xubuntu « Xubuntu Bl
2008-11-13 カテゴリ: Client Side タグ: Tips JavaScript Unicode 先日、JavaScriptでサロゲートペアに対応した文字列関数を書いたりしてみたが、これだけだとサロゲートペアの扱い方を思い出すにはわかりづらいので、わかりやすくまとめ直してメモっておこうと思う。 前提知識 サロゲートペアを使って表現できるコードポイントの範囲はU+10000-U+10FFFFだけ (だから、UnicodeはU+10FFFFまでしかコードポイントを割り当てない仕様になってる!) サロゲートコードポイントはU+D800-U+DFFFの2048個 (11ビット) 2048個を上位サロゲート (U+D800-U+DBFF) と下位サロゲート (U+DC00-U+DFFF) に分けて、上位サロゲートと下位サロゲートの組み合わせ (1024*1024) でU+10000-
2008-12-31 カテゴリ: その他のプログラミング タグ: Tips TeX LaTeX フォント R たぶんやり方はたくさんあると思うけど、僕が卒論の原稿にIPAフォントを埋め込んだときに使った方法。 OSはWindowsで、TeXのプログラムはW32TeXをほぼそのままインストールしただけ。 基本的にはdvipdfmxを使ってPDFを作成する。dvipdfmとかを使ってもうまくいくかは知らない。 1. プリアンブルでマップファイルを指定する プリアンブルに↓のような一行を追加する \special{pdf: mapfile ipa.map} この一行でdvipdfmxに使用するマップファイル名を伝えることができるらしい。 追記 プリアンブルでマップファイルを指定しなくても、dvipdfmxを実行するときに↓のように-fオプションを指定してやればいいらしい。 dvipdfmx -f
2008-06-16 カテゴリ: Client Side タグ: Tips デジタルカメラ EXIF Perl バッチ 2週間ほど欧州周遊の旅に出ていて、そのせいでブログの更新がご無沙汰になっていました。一ヶ月以上放置すると広告記事が投稿される仕様のようですね。 で、デジカメを使ってたくさんの写真を撮ってきたわけですが、時計を合わせるのを忘れたせいで、全部日本時間のまま写真を撮ってしまいました。そのデータを全部現地時間に変換するのが意外と面倒だったので、その方法をメモっておく。 注意 僕が写真を撮るのに使ったデジカメは、CanonのIXY DIGITAL 70で、写真の閲覧に使っているのはGoogleのPicasa。このメモに書く方法は、IXY DIGITAL 70で間違った日時で撮った写真を訂正して、Picasaで意図通りに表示することができたというだけのもの。なので、他のデジカメや閲覧
ということで、合計金額は58050円。 近所の指定教習所に通った場合の費用はだいたい9万円台前半から後半ぐらいなので、だいたい3~4万円お得だったかなという感じ。 教習所に通う場合と大きく違うのは、これらの費用を一括で支払うことはないので、教習所みたいに一括で10万用意したりする必要がない点。初期費用が調達できない学生でも気長に受け始められる (その分、最終的な費用がいくらになるかが読めないのが難点だが)。 練習 練習方法は主に四種類。 一つ目は普段乗っているバイクでの法規走行の練習。僕は普段250ccの小さいバイクに乗っているので、それで法規走行の練習をした。といっても、公道でできる練習はあまり多くなくて、交差点を曲がるときの幅寄せや安全確認の練習だとか、進路変更の時の安全確認の方法くらい。免許試験では普通の法規走行をしていても合格しないので、このサイトやこのサイトに乗っているコース図を
2008-12-09 カテゴリ: その他のプログラミング タグ: LaTeX OMake Tips トラックバック OMake つかって LaTeX コンパイルしたら簡単すぎて身長が5cm伸びた - 日記を書く[・ _ゝ・]はやみずさん LaTeX のコンパイルめんどくさい。何がめんどくさいって、ref つかうと2回コンパイルしなきゃいけないとか、bibtex の使い方覚えられないとか。そもそもファイル保存するたびにコンパイルしなおすとか、、、 (略) で、OMake つかったらあまりに簡単すぎてわろた。 うわーーーん><こんな記事を上げられたらまた卒論そっちのけでTeXとかいじりはじめちゃうじゃないかーーー>< というわけで、 卒論原稿のLaTeXファイルをOMakeでビルドしてみました。Windows環境だからちょっと面倒かも。 OMakefile等は続きで。 基本的には、hayami
2008-12-06 カテゴリ: その他のプログラミング タグ: Tips Vim フォント FontForge Linux 前回のエントリーで、FontForgeのスクリプトを使ってDejaVu Sans MonoとIPAゴシックを合成したりしてみた。そのとき使ったスクリプトを手直しして、少しきれいに出力できるようになったぽいので、新しいスクリプトをメモしておく。 変更点 横幅の縮小率を75%から80%に変更 カーニング情報が崩れていたのを修正 ハイフン("-")が短すぎて見づらい問題を修正 ソースは続きで。 #!/usr/bin/fontforge -script # パラメータ dejavu = "DejaVuSansMono.ttf" ipag = "ipag.ttf" ipag_s = "ipag-scaled.ttf" # フォントファミリ名 (引数でも指定可能) family
2008-12-02 カテゴリ: その他のプログラミング タグ: Tips Vim フォント FontForge Linux プログラミングに使える良いフォントを探していたら、DejaVuフォントというものを見つけた。確かにすごくきれいだし見やすい。 で、VimでDejaVu Sans Monoを使おうと思ったんだけど、Vimでは欧文フォントと和文フォントを別々に指定することができないから、DejaVu Sans Monoを指定してしまうと日本語が表示できなくなってしまう。だから、いろいろと試行錯誤してみた。まだ途中だけどとりあえずメモ。 方法1 Font Linkingを使う 方法2 FontForgeで合成する 方法1 Font Linkingを使う Font LinkingっていうのはWindowsの機能で、任意のフォントを組み合わせて使えるようになる機能らしい。これを使ってDeja
2008-11-26 カテゴリ: 雑記 タグ: Tips Linux coLinuxを久しぶりにインストールしてみた。以前導入したときはネットワークの設定とかがやたらと面倒だった記憶があるんだけど、今日やってみたらものすごくすんなりいってしまって驚いた。 とりあえずインストール方法をメモ。 必要なものをダウンロード ダウンロードページから必要なものをダウンロードしてきます。 必要なのはcoLinuxのインストーラーとUbuntuのイメージファイル。現時点の最新版はcoLinux-0.7.3.exeとUbuntu-7.10.ext3.2GB.7z。 coLinuxのインストール インストーラーの指示に従って素直にcoLinuxをインストールします。 インストールしたコンポーネントは↓のような感じ。 使わないからTAPは外してみた。一番下のRoot Filesystem image Downl
2008-11-06 カテゴリ: Client Side タグ: JavaScript 安易な発想 Unicode JavaScriptの文字列型はUTF-16を採用しているから、サロゲートペアを使用した文字が混ざるといろいろと厄介だったりする。一例としては↓のような感じ。 var s = "𪚲"; // U+2A6B2 console.log(s.length); // 2 console.log(s.split("")); // ["�", "�"] ということで、サロゲートペアの扱いを少し楽にする関数を書いてみたからとりあえず公開してみる。 /** 文字列中にサロゲートペアを含む場合はtrue */ String.prototype.hasSurrogate = function() { return (/[\uD800-\uDBFF][\uDC00-\uDFFF]/).test(
次のページ
このページを最初にブックマークしてみませんか?
『LiosK-free Blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く