??? #Github 最开始我的那个 x86 NASM 汇编的 CoolTok 就没多少人 star,PinkD 的 Java/Python CoolApkTokenGenerator 也没有多少星星,看来还是包装的力量强大... 🙈
#Microsoft #Office https://github.com/duangsuse/Share/blob/master/Word0.vb
为了帮老师输入作文比赛的作文单子写了个 Word VisualBasic 宏,对 Basic 的怀旧肃然起敬....
https://github.com/duangsuse/Share/blob/master/Word0.vb#L41
我专门弄了个 Lexer-like 扫描算法扫描自己的文本字符串输入...
其中有一个循环,我后来发现是自己错了 #fix #Basic #Algorithm
本来因为我不知道 Basic 滋不资磁
是因为我在使用的时候发现它(跳过空白行和注释行的时候)会导致跳完所有空白注释之后直接结束处理,调试结果居然让我的木头脑袋百思不得其姐(跑
后来我发现是因为我没有重置这个变量(这样一次 skipThis, 后面全都 skip 掉了.... 实际上只是 skip 掉 "This" loop 而已).... 记下教训,这种丢脸的事情... 😭
希望以后不要发生了....
为了帮老师输入作文比赛的作文单子写了个 Word VisualBasic 宏,对 Basic 的怀旧肃然起敬....
https://github.com/duangsuse/Share/blob/master/Word0.vb#L41
我专门弄了个 Lexer-like 扫描算法扫描自己的文本字符串输入...
其中有一个循环,我后来发现是自己错了 #fix #Basic #Algorithm
本来因为我不知道 Basic 滋不资磁
continue; 所以就弄了个 Dim doNext As Boolean
后来如你们所见,doNext 是个死变量,没有被读取是因为我在使用的时候发现它(跳过空白行和注释行的时候)会导致跳完所有空白注释之后直接结束处理,调试结果居然让我的木头脑袋百思不得其姐(跑
后来我发现是因为我没有重置这个变量(这样一次 skipThis, 后面全都 skip 掉了.... 实际上只是 skip 掉 "This" loop 而已).... 记下教训,这种丢脸的事情... 😭
希望以后不要发生了....
Open "foo.txt" For Input As #1
Dim line As String
Dim skipThis As Boolean
skipThis = False
While Not Eof(1)
skipThis = False '!!!! Add this
Line Input #1, line
If IsBlankOrComment(line) Then
skipThis = True
End If
If Not skipThis Then
...
'' Or (好像跳两下了...)
'Else
' skipThis = False
End If
Wend
Close #1GitHub
duangsuse/Share
🐕 duangsuse's shared files(e.g. productive software projects, documents) - duangsuse/Share
因为 #Basic 没有内建 Regex 支持,我只好自己用 VBA.Strings 写的低效辣鸡满是 Shadow Copy (而不是 Zero Copy... 老是传 ByValue,我怀疑它是不是真的要复制一份字符串... 那多伤感情...)的扫描程序,虽然我其实可以用 Windows 的 COM Object 的.... 而且这是 #dotnet #CSharp VisualBasic for Applications 而不是 VisualBasic.NET 所以连
Of Generics 都没有,数组都得是 Variant(无类型检查),辣鸡死了... 话说 VB.NET 还有 Class、Interface、Type、Namespace 什么的?///Forwarded from Deleted Account
最近知道了一个免服务器发布静态配置的方法,DNS TXT 记录…
可以用来做应用内检查更新
可以用来做应用内检查更新
Forwarded from 每日消费电子观察 (Dave Lin)
《绝地求生:刺激战场》今日改名为《和平精英》正式上线
http://www.vgtime.com/topic/1054077.jhtml
在免费测试近一年之后,《绝地求生:刺激战场》官方微博在今天正式宣布停止测试,同时宣布另一款游戏《和平精英》在今天开启公测。
毕竟为了版号,什么都做得出来
至于对游戏评论
欢迎各位移步下文
为了过审,和平精英(前刺激战场)的做法把我看笑了
https://www.huxiu.com/article/298234.html
个人感觉可以和之前的清理"苏联政治笑话生成器"一样,成为当代魔幻主义的一部分了
http://www.vgtime.com/topic/1054077.jhtml
在免费测试近一年之后,《绝地求生:刺激战场》官方微博在今天正式宣布停止测试,同时宣布另一款游戏《和平精英》在今天开启公测。
毕竟为了版号,什么都做得出来
至于对游戏评论
欢迎各位移步下文
为了过审,和平精英(前刺激战场)的做法把我看笑了
https://www.huxiu.com/article/298234.html
个人感觉可以和之前的清理"苏联政治笑话生成器"一样,成为当代魔幻主义的一部分了
Vgtime
《绝地求生:刺激战场》今日改名为《和平精英》正式上线 - vgtime.com
《绝地求生:刺激战场》今日改名为《和平精英》正式上线,是不是所有玩家都买账,现在还不好说。
Forwarded from YSC 的频道
另外才发现微软开源了 wil。逆向 Windows 中 C++ 编写的程序经常能看到一些封装传统 Win32 API 的 wil class。有了这个可以用 modern C++ 的方式来写 Win32 应用,避开很多 C 语言的坑。
https://github.com/Microsoft/wil/wiki/RAII-resource-wrappers
RAII 好耶!
https://github.com/Microsoft/wil/wiki/RAII-resource-wrappers
RAII 好耶!
GitHub
GitHub - microsoft/wil: Windows Implementation Library
Windows Implementation Library. Contribute to microsoft/wil development by creating an account on GitHub.
C++ 语言特性的确比较多的... 手写起来恐怕还是比较难啊... 也要看后端的问题,你是打算弄优化编译,后面的汇编器、Linker 什么的是不是也要自己写,stl stdcxx 是不是也自己实现?
如果 stl 的 map 是 hashmap 的话,恐怕你也要学点数据结构和算法了,其他的我不清楚
如果 stl 的 map 是 hashmap 的话,恐怕你也要学点数据结构和算法了,其他的我不清楚
This media is not supported in your browser
VIEW IN TELEGRAM
说起来活命也不容易,前端没时间入,后端水太深,这还没扯到某些信息学、数学、计算机科学的内容呢。
就是做什么都很困难啊!
比如说,安全离不开的密码学、关系代数和关系数据库、信号处理、计算机图形学、信号处理、无线电、Hardware、机器学习、软件工程理论....
就是做什么都很困难啊!
比如说,安全离不开的密码学、关系代数和关系数据库、信号处理、计算机图形学、信号处理、无线电、Hardware、机器学习、软件工程理论....
duangsuse::Echo
说起来活命也不容易,前端没时间入,后端水太深,这还没扯到某些信息学、数学、计算机科学的内容呢。 就是做什么都很困难啊! 比如说,安全离不开的密码学、关系代数和关系数据库、信号处理、计算机图形学、信号处理、无线电、Hardware、机器学习、软件工程理论....
说起来今天我本来打算做这些的,可后来没啥时间了...(料到假使我把时间都拿来实现也不可能完成...)
我对 Maven, Gradle, CMake, Make 也稍微熟悉了一点,不至于卡项目创建
+ NotiMemo
类似 YuutaW 的 DoNotForget, 可能是要我尝试写一下 ListView 的 Adapter,使用 Android Notification 模型,Intents 以及基本的 Persistence, Activities
当然还有点动效的.... (L 上有 Ripple 就不必了)
想来是:
activity.Main()
activity.NotisEdit()
activity.NotiView(title)
Main 直接发一个 Keep alive 的 Notification 完事,然后这个 Notifiaction 留着,或者不管怎么样让 NotiEdit 能访问到,要更新其中的状态行
Notification 不需要其他的(比如,按钮),只要一个 text span 完事
NotiEdit 就是使用对话框风格的 Activity 了,它访问使用 SharedPreference 持久化的存储层,
Memo,就是一个记录,有一个 Title 和一个 Body,都是 Spannable,可以 Create-Read-Delete
作用是:
查看列表,可以使用『All/Finished/Working』状态过滤,Finished 列表项,使用半透明显示
删除 Memo,通过长按列表项
新建 Memo,通过 "+" 按钮
改变 Memo 的完成状态,通过点击 Memo 来完成
查看 Memo 的细节,通过双击 Memo 来完成(好像有点 dirty... 或许应该通过 Horizontal 滑动的...)
每次更新(插入、变态、删除)的时候再去更新应用启动的时候缓存的集合(而不是通过
Persistence 是一个 interface
直接让 list view 去 draw 当前的 memo list 然后再直接
+ Todo
也是一个类似的 App,不过是比较大的,使用普通的『Activity』+Fab 界面风格的,不过是测试 Kotlin Anko、Realm、RealmRecyclerView 用的
这时候就使用 ViewHolder 了,说白了就是抄 《Kotlin 极简教程》的
+ 完成之前学校里没写完的 HTML 一二三等奖名单评奖器
+ BinaryStreamIO....
关于,我又想了一个方式抽提 ByteOrder 读取写入逻辑,使用了 Higher-order-function 和变长位运算、位长度计算
可以直接
<T> readNBits<T>(T selector, T value)
readByte<T> = readNBits<T>(0xFF)
但其实我最终想要的还是
selectByteAt(32)(0xFF_EE_DD_CC)(0) //=> FF
moveByte(32)(0xFF_EE_DD_CC)(0)(2) // 0x00_FF_00_00
其中 select 的逻辑大概就是
(T) -> kotlin.Int
>>> f(0)
251658240
>>> f(0).toString(16)
f000000
>>> f(1).toString(16)
ee0000
>>> f(2).toString(16)
dd00
>>> f(3).toString(16)
cc
+ Spannable Builder
为什么我写完了 Python 的 XMLBuilder 却不会写 Spannable Builder 呢?
我对 Maven, Gradle, CMake, Make 也稍微熟悉了一点,不至于卡项目创建
+ NotiMemo
类似 YuutaW 的 DoNotForget, 可能是要我尝试写一下 ListView 的 Adapter,使用 Android Notification 模型,Intents 以及基本的 Persistence, Activities
当然还有点动效的.... (L 上有 Ripple 就不必了)
想来是:
activity.Main()
activity.NotisEdit()
activity.NotiView(title)
Main 直接发一个 Keep alive 的 Notification 完事,然后这个 Notifiaction 留着,或者不管怎么样让 NotiEdit 能访问到,要更新其中的状态行
Notification 不需要其他的(比如,按钮),只要一个 text span 完事
NotiEdit 就是使用对话框风格的 Activity 了,它访问使用 SharedPreference 持久化的存储层,
Memo,就是一个记录,有一个 Title 和一个 Body,都是 Spannable,可以 Create-Read-Delete
作用是:
查看列表,可以使用『All/Finished/Working』状态过滤,Finished 列表项,使用半透明显示
删除 Memo,通过长按列表项
新建 Memo,通过 "+" 按钮
改变 Memo 的完成状态,通过点击 Memo 来完成
查看 Memo 的细节,通过双击 Memo 来完成(好像有点 dirty... 或许应该通过 Horizontal 滑动的...)
每次更新(插入、变态、删除)的时候再去更新应用启动的时候缓存的集合(而不是通过
MemoDataAccess 获取的持久化状态),刷新状态栏 Notification 状态Persistence 是一个 interface
interface MemoDataAccess {
List<Memo> getAllMemo();
List<Memo> getWorkingMemo();
List<Memo> getFinishedMemo();
void addMemo(final Memo nt);
void deleteMemo(final String title);
void changeMemoState(final Memo nt, boolean active);
void flush() throws IOException;
}
然后就使用普通的 Adapter 模型,List Model 吧(而不是 Item Model/ViewHolder)直接让 list view 去 draw 当前的 memo list 然后再直接
f(x)=x 映射索引添加行为就可以了(+ Todo
也是一个类似的 App,不过是比较大的,使用普通的『Activity』+Fab 界面风格的,不过是测试 Kotlin Anko、Realm、RealmRecyclerView 用的
这时候就使用 ViewHolder 了,说白了就是抄 《Kotlin 极简教程》的
+ 完成之前学校里没写完的 HTML 一二三等奖名单评奖器
+ BinaryStreamIO....
关于,我又想了一个方式抽提 ByteOrder 读取写入逻辑,使用了 Higher-order-function 和变长位运算、位长度计算
可以直接
<T> readNBits<T>(T selector, T value)
readByte<T> = readNBits<T>(0xFF)
但其实我最终想要的还是
selectByteAt(32)(0xFF_EE_DD_CC)(0) //=> FF
moveByte(32)(0xFF_EE_DD_CC)(0)(2) // 0x00_FF_00_00
其中 select 的逻辑大概就是
fun <T: Int> selectByteOf(bs: T, sz: T) = fun (n : T) = bs.and(0xFF shl sz -n*8 -8)>>> f
val f=selectByteOf<Int>(0x0FEEDDCC, 32)
(T) -> kotlin.Int
>>> f(0)
251658240
>>> f(0).toString(16)
f000000
>>> f(1).toString(16)
ee0000
>>> f(2).toString(16)
dd00
>>> f(3).toString(16)
cc
+ Spannable Builder
为什么我写完了 Python 的 XMLBuilder 却不会写 Spannable Builder 呢?
duangsuse::Echo
展示性地介绍一下这个插件,目前例子还没做完....
我决定现在做完了(
VisualGimp 要火(求
VisualGimp 要火(求