Skip to content

Instantly share code, notes, and snippets.

View skysan87's full-sized avatar

skysan skysan87

  • Japan
View GitHub Profile
@skysan87
skysan87 / CustomList.cls
Created May 22, 2021 15:30
[Salesforce][Apex] how to sort a List by any property
public class CustomList {
private Map<String, Object> innerlist = new Map<String, Object>();
public void add(Object obj) {
this.innerlist.put(obj.hashCode().format(), obj);
}
public List<Object> sortBy(String propertyName) {
String str = JSON.serialize(this.innerlist);
@skysan87
skysan87 / README.md
Created January 21, 2024 15:15
PandocのDocker環境構築と基本的なコマンド

PandocのDocker環境構築と基本的なコマンド

前提条件

  • Dockerインストール済みであること

公式リファレンス

環境構築

@skysan87
skysan87 / heatmap.html
Last active January 7, 2024 17:00
Cal-Heatmapのサンプル
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="https://d3js.org/d3.v7.min.js"></script>
<script src="https://unpkg.com/cal-heatmap/dist/cal-heatmap.min.js"></script>
<script src="https://unpkg.com/cal-heatmap/dist/plugins/Legend.min.js"></script>
<script src="https://unpkg.com/@popperjs/core@2"></script>
@skysan87
skysan87 / csv-loader.js
Last active January 6, 2024 11:52
[JavaScript][WebAssembly][SQLite] CSVファイルを読み込んでSQLで操作する。
async function openFilePicker () {
const pickerOpts = {
types: [
{
accept: {
'text/*': ['.csv', '.tsv']
}
},
],
excludeAcceptAllOption: true,
@skysan87
skysan87 / index.html
Last active January 3, 2024 07:57
[Vue 3][TailwindCSS 3] CSV Reader on Browser
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>CSV Viewer</title>
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/encoding-japanese/2.0.0/encoding.min.js"></script>
<script type="importmap">
@skysan87
skysan87 / vue-modal-dialog.html
Last active October 5, 2023 12:46
[Vue3] dialog element sample
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script type="importmap">
{
"imports": {
"vue": "https://unpkg.com/vue@3/dist/vue.esm-browser.js"
@skysan87
skysan87 / mermaid-editor.html
Created April 1, 2023 12:20
mermaid.js + monaco editor CDN Sample
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet"
@skysan87
skysan87 / getFileNamesFromRoot.js
Last active April 1, 2023 09:09
[JS] showDirectoryPicker: ルートディレクトリからファイルパスを取得
// @see: https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryHandle
async function* load (dirHandle, dir = '') {
const currentdir = dir + '/' + dirHandle.name;
for await (const handle of dirHandle.values()) {
if (handle.kind === 'file') {
yield currentdir + '/' + handle.name;
} else if (handle.kind === 'directory') {
yield* load(handle, currentdir);
}
}
@skysan87
skysan87 / module1.bas
Last active March 29, 2023 13:04
[VBA]開いているExcelブックのフォーカスをA1に揃えるマクロ
Public Sub SelectA1()
'描画停止
Application.ScreenUpdating = False
Dim firstIndex As Integer
firstIndex = 0
Dim Target As Worksheet
For Each Target In Worksheets
'Debug.Print target.Name
@skysan87
skysan87 / data_access_sample.js
Created February 28, 2023 13:38
[JavaScript] DAO pattern with Reflect
// DataModel
class UserModel {
constructor(data = {}) {
this.id = data.id ?? null;
this.name = data.name ?? '';
}
}
class BookModel {
constructor(data = {}) {