ときどきの雑記帖 RE* (新南口)
渚にて
今週のしずえさん
コケの育て方 「日光に当てる」
そういえば
閉鎖された東急武蔵小杉駅の定期券売り場は シェアオフィスになったらしい。 が、それほど広くなかったような?
東急電鉄、駅の定期券売り場をシェアオフィス化、武蔵小杉駅と長津田駅で - INTERNET Watch
武蔵小杉駅に開設されるシェアオフィスは「TSO エキ de work Kosugi」。全5席で、うち1席はスタンディング席。 営業時間は7時~20時で、土日祝日も営業する。利用料金は100円/15分。
ふむ。
trap
bashが評価されない -mac標準の古い/bin/bashならスクリプト- | OKWAVE
trap '
rm -f ~/file1.txt ~/file2.txt ~/file3.txt
rm -rf ~/folder1 ~/folder2 ~/folder3
exit' 1 2 3 15 20
:MacOS10.13
/bin/bash --version
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin17)
Copyright (C) 2007 Free Software Foundation, Inc.
問題なく動きます
/usr/local/bin/bash --version
GNU bash, バージョン 5.1.8(1)-release (x86_64-apple-darwin17.7.0)
Copyright (C) 2020 Free Software Foundation, Inc.
ライセンス GPLv3+: GNU GPL
trapで止まります
: Linux
/bin/bash --version
GNU bash, バージョン 5.0.17(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2019 Free Software Foundation, Inc.
問題なく動きます
一般的な表現教えて下さい
なんだろう?
あとで調べる(かもしれない)。その1。
PHP
あとで調べる(かもしれない)。その2。
gccと
浮動小数点数の呪われた世界(x87 と C/C++) - Qiita
結局のところ、c99 と c11 の間に断絶がある理由はわからないんだけど、32bit の clang の動きを鑑みるに
-std=c11 をリリースする前に、呪われた世界も C 言語として正しいということに gcc 開発者チームが気づいた。 そこで、デフォルトの動作を、より速い呪われた世界にしたいと思った。 しかし、急に変えるとひどい非互換を入れることになるので「 std=c11 以降では呪われる」という選択をした。
辺りではないかと想像する。想像しているだけで証拠はない。
あとで調べる(かもしれない)。その3。
glob zsh 4
ということで
$ grep -F -C 2 -e '/**/' glob.c
として、/**/
の前後がどうなっているか抜き出してみた(面倒なのでとりあえずはglob.cのみ)。
#define GS_LINKED (GS_NORMAL << GS_SHIFT)
/**/
int badcshglob;
/**/
int pathpos; /* position in pathbuf (needed by pattern code) */
--
*/
/**/
char *pathbuf;
--
/* Prefix, suffix for doing zle trickery */
/**/
mod_export char *glob_pre, *glob_suf;
--
* must be matched separately. */
/**/
static void
addpath(char *s, int l)
--
* the file does not exists. */
/**/
static int
statfullpath(const char *s, struct stat *st, int l)
--
/* add a match to the list */
/**/
static void
insert(char *s, int checked)
--
* tried all of it. */
/**/
static void
scanner(Complist q, int shortcircuit)
--
/* This function tokenizes a zsh glob pattern */
/**/
static Complist
parsecomplist(char *instr)
--
/* turn a string into a Complist struct: this has path components */
/**/
static Complist
parsepat(char *str)
--
/* get number after qualifier */
/**/
static off_t
qgetnum(char **s)
--
/* get mode spec after qualifier */
/**/
static zlong
qgetmodespec(char **s)
--
*/
/**/
static char *
glob_exec_string(char **sp)
--
*/
/**/
int
checkglobqual(char *str, int sl, int nobareglob, char **sp)
--
* into a series of nodes. */
/**/
void
zglob(LinkList list, LinkNode np, int nountok)
--
/* Return the trailing character for marking file types */
/**/
mod_export char
file_type(mode_t filemode)
--
/* check to see if str is eligible for brace expansion */
/**/
mod_export int
hasbraces(char *str)
--
/* expand stuff like >>*.c */
/**/
int
xpandredir(struct redir *fn, LinkList redirtab)
--
*/
/**/
static int
bracechardots(char *str, convchar_t *c1p, convchar_t *c2p)
--
/* brace expansion */
/**/
mod_export void
xpandbraces(LinkList list, LinkNode *np)
--
/* check to see if a matches b (b is not a filename pattern) */
/**/
int
matchpat(char *a, char *b)
--
*/
/**/
static char *
get_match_ret(Imatchdata imd, int b, int e)
--
*/
/**/
int
getmatch(char **sp, char *pat, int fl, int n, char *replstr)
--
*/
/**/
void
getmatcharr(char ***ap, char *pat, int fl, int n, char *replstr)
--
*/
/**/
mod_export int
getmatchlist(char *str, Patprog p, LinkList *repllistp)
--
}
/**/
mod_export void
freematchlist(LinkList repllist)
--
}
/**/
static void
set_pat_start(Patprog p, int offs)
--
}
/**/
static void
set_pat_end(Patprog p, char null_me)
--
}
/**/
#ifdef MULTIBYTE_SUPPORT
--
*/
/**/
static int iincchar(char **tp, int left)
{
--
}
/**/
static int
igetmatch(char **sp, Patprog p, int fl, int n, char *replstr,
--
}
/**/
#else
--
#define METAINC(x) ((x) += (*(x) == Meta) ? 2 : 1)
/**/
static int
igetmatch(char **sp, Patprog p, int fl, int n, char *replstr,
--
}
/**/
#endif /* MULTIBYTE_SUPPORT */
/* blindly turn a string into a tokenised expression without lexing */
/**/
mod_export void
tokenize(char *s)
--
*/
/**/
mod_export void
shtokenize(char *s)
--
}
/**/
static void
zshtokenize(char *s, int flags)
--
/* remove unnecessary Nulargs */
/**/
mod_export void
remnulargs(char *s)
--
/* device number */
/**/
static int
qualdev(UNUSED(char *name), struct stat *buf, off_t dv, UNUSED(char *dummy))
--
/* number of hard links to file */
/**/
static int
qualnlink(UNUSED(char *name), struct stat *buf, off_t ct, UNUSED(char *dummy))
--
/* user ID */
/**/
static int
qualuid(UNUSED(char *name), struct stat *buf, off_t uid, UNUSED(char *dummy))
--
/* group ID */
/**/
static int
qualgid(UNUSED(char *name), struct stat *buf, off_t gid, UNUSED(char *dummy))
--
/* device special file? */
/**/
static int
qualisdev(UNUSED(char *name), struct stat *buf, UNUSED(off_t junk), UNUSED(char *dummy))
--
/* block special file? */
/**/
static int
qualisblk(UNUSED(char *name), struct stat *buf, UNUSED(off_t junk), UNUSED(char *dummy))
--
/* character special file? */
/**/
static int
qualischr(UNUSED(char *name), struct stat *buf, UNUSED(off_t junk), UNUSED(char *dummy))
--
/* directory? */
/**/
static int
qualisdir(UNUSED(char *name), struct stat *buf, UNUSED(off_t junk), UNUSED(char *dummy))
--
/* FIFO? */
/**/
static int
qualisfifo(UNUSED(char *name), struct stat *buf, UNUSED(off_t junk), UNUSED(char *dummy))
--
/* symbolic link? */
/**/
static int
qualislnk(UNUSED(char *name), struct stat *buf, UNUSED(off_t junk), UNUSED(char *dummy))
--
/* regular file? */
/**/
static int
qualisreg(UNUSED(char *name), struct stat *buf, UNUSED(off_t junk), UNUSED(char *dummy))
--
/* socket? */
/**/
static int
qualissock(UNUSED(char *name), struct stat *buf, UNUSED(off_t junk), UNUSED(char *dummy))
--
/* given flag is set in mode */
/**/
static int
qualflags(UNUSED(char *name), struct stat *buf, off_t mod, UNUSED(char *dummy))
--
/* mode matches specification */
/**/
static int
qualmodeflags(UNUSED(char *name), struct stat *buf, off_t mod, UNUSED(char *dummy))
--
/* regular executable file? */
/**/
static int
qualiscom(UNUSED(char *name), struct stat *buf, UNUSED(off_t mod), UNUSED(char *dummy))
--
/* size in required range? */
/**/
static int
qualsize(UNUSED(char *name), struct stat *buf, off_t size, UNUSED(char *dummy))
--
/* time in required range? */
/**/
static int
qualtime(UNUSED(char *name), struct stat *buf, off_t days, UNUSED(char *dummy))
--
/* evaluate a string */
/**/
static int
qualsheval(char *name, UNUSED(struct stat *buf), UNUSED(off_t days), char *str)
--
}
/**/
static int
qualnonemptydir(char *name, struct stat *buf, UNUSED(off_t days), UNUSED(char *str))
ふむ。 やっぱりなにかのマーカーとして使っているように思えるけど どこかにこの辺の説明が書かれていないのかな?
銀河の歴史がまた一ページ
宇宙暦640年7月14日 銀河帝国軍と自由惑星同盟軍はダゴン星域において戦闘状態にはいった。この日の戦闘では両軍の先遣の分艦隊同士が砲火を交えたものの、おたがいに一隻の損害も出さずに本隊に帰還した。#ダゴン星域会戦 #外伝5巻
— 今日は何の日@銀英伝bot (@logh_today) July 13, 2021