You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
この記事は Vim Advent Calendar 2020 25日目の記事です。 はじめに 年末ですね。年賀状ですね。インターネットが普及した現代、若い世代の人達においては年賀状を交わす事は少なくなってしまったかもしれません。しかし田舎育ちの僕やある程度年配の方々の世界線では年賀状は未だ変わらず有効なコミュニケーション手段として採用されており「アイツん家の子、大きくなったな」「アイツ随分老けたな」といった思い出回帰の方法としても使われています。 さて皆さんは年賀状をどの様に作っておられますか?手書きですか?それとも「筆○2020」等といった年賀状作成専用ソフトをお使いだったりしますか?僕は毎年 LibreOffice の宛名書き印刷を使っています。 LibreOfficeで宛名印刷(縦書き/連名): ひろろろぐ LibreOffice で差し込み印刷する記事は沢山あるのですが、連名がちゃ
やりたいこと 入力はcsvファイル そのうちの一部の列の値を使って、別のファイル(例:SQL)を出力したい csvファイルはレイアウトの変更が有り得るので多少効率が悪くても変更に柔軟に追随できるようにしておきたい 仕事で無理やりHaskellを使いたい 方針 Haskellのcsvライブラリであるcassavaを使う cassavaは1行目をヘッダーとして列名で値を取り扱うことができる関数が用意されているので、そちらを使う なお、cassavaはデータ型をcsvに変換するエンコードと、csvをデータ型に変換するデコードの両方に対応しているが、今回はデコードに特化した記事とする 以降のコードはData.Csvのドキュメントにあるサンプルを元にしている https://hackage.haskell.org/package/cassava 前提知識としてData.Csvの型定義のうちデコードに
はじめに 普段のようにトゥイッターしていたらタイムラインにステキ拡張が流れてきたので、布教のためにバーっと紹介記事を書いてみる次第。 Rainbow CSV Rainbow CSVって何? VSCodeでCSVを扱いやすくするためのステキ拡張 便利でステキな機能をいくつも持っている とにかくヤバイ(語彙) Rainbow CSVの何がヤバイの? ①CSVが読みやすくてヤバイ ちょうどいいCSVが無かったので、適当にポケモンのCSVデータを生々しく開いてみた。 CSVの見た目ってこんなのだよね。日本語項目はともかく、数値が連続している箇所は「あれ、この"49"ってどの項目に対応してるんだっけ…?」みたいな混乱が起きて発狂しがち…。 しかし、このファイルをRainbow CSVに通すと…なんということでしょう! ヘッダー項目とデータ項目にカラフルな色が付き、項目の種類が一発でわかるようになって
テキストファイルは開いても安全――。情報セキュリティの常識だ。ところが、その常識が覆された。テキストファイルの一種であるCSVファイルを使った標的型攻撃が国内で確認されたのだ。CSVファイルを開いただけでウイルス(マルウエア)に感染する恐れがある。CSVファイルも危ないファイル形式の一つだと認識すべきだ。 CSVファイルとは、表の要素などをカンマや改行を使って記述したテキストファイルのこと。CSVはComma Separeted Valueの略である。ファイルの拡張子はcsv。CSVファイルの中にはテキストの情報しかない。 だが、拡張子がtxtなどのテキストファイルとは大きく異なる点がある。初期設定(デフォルト)でExcelと関連付けられている点である。Excelをインストールすると、ユーザーが設定変更しなければ、CSVファイルが関連付けられる。つまり、CSVファイルをダブルクリックするな
trdsqlというコマンドラインツールを作りました。 Goで作ってます。 githubの trdsqlからダウンロード出来ます。 またLinux/Windows/macOSのバイナリもあります。 以下は、古くなっている内容もいくつかあります。 最新版に対応した、より詳細な内容は trdsql 目次 | Noboru Saito's page を参照して下さい。 これは何? 簡単に言えばCSV(TSV含む)やLTSVに対してSQLを実行できるツールです。 同様のツールが q や textql 等いくつかあります。 trdsqlはPostgreSQLドライバとMySQLドライバを含んでいて実際にDBに接続することでSQLite以上の機能を使用できるようにしています。 PostgreSQLやMySQLの構文が使えるだけではなく、CSVファイルと実テーブルでJOINしたり、CSVファイルからテーブ
Elm 界隈では構文解析するライブラリを「パーサー(Parser)」、それを Elm の型に落とし込むものを「デコーダー(Decoder)」と呼び分けることが多い。パーサーは既にあって(lovasoa/elm-csv)、デコーダーで良いものがなかったので作った。 CsvDecode - elm-csv-decode 1.0.0 使い方 elm-tools/parser インスパイアのパイプライン式。 -- CSV の各行をこの User 型にしたい type alias User = { id : String , name : String , age : Int , mail : Maybe String } -- デコーダー Decoder User を作る userDecoder : Decoder User userDecoder = succeed User |= field
先日、Twitterでqコマンドが話題になっていました。 github.com スターが3000を超えていてすごいですね。2014年から開発されているツールで、Pythonで書かれています。 これはGoで実装してみたいなーと思っていたところ、mattnさんが素早く実装されていました。 mattn.kaoriya.net 一本取られたと思ったものの、よく読むとまだ標準入力しか対応していないようです。 いったいどういう仕組みなのか、何の実装が難しいところなのか、qコマンドが嬉しい場面はどういうケースなのか、自分も知りたくなったので1から実装してみました。 私が一番素早く書ける言語ということでHaskellを選びました。 qhs qコマンドのHaskell実装、ということでqhsと名づけました。 github.com stackが入っていればインストールは簡単です。 $ git clone ht
CSV Schemaとは 簡単に言うとCSVデータの定義とValidationを目的としたDSLです ほぼJSON SchemaのCSV版といってよさそうです 仕様はこちらをどうぞ CSVこれまで CSVはRFC4180 - 日本訳で標準化されてますが、策定が遅かったため各ベンダー間でデータ形式がバラバラです それによって特に困る領域の一つにEDI(データ交換)があります なにせ各システムが示すCSVが実際どのようなフォーマットなのか、認識を合わせするところから始まる必要があります (例)区切り文字が「カンマ」or「タブ」 か (例)囲み文字が「ダブルクォート」or「シングルクウォート」or「無し」 か (例)エスケープの有無 (例)ヘッダ行の有無 (例)項目中の改行や区切り文字はどういう仕様で扱うか etc. これがクリア出来た後に、実際のデータ項目のがどのような意味か(IDとか金額とか
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く