在 MySQL 中 IS NULL 、IS NOT NULL 、!=不能用索引?胡扯! - 掘金 中,它說: 對于二級索引來說,索引列的值可能為 NULL 。那對于索引列值為 NULL 的二級索引記錄來說,它們被放在 B+樹的哪里呢?答案是:放在 B+樹的最左邊。
但是我并沒有找到相關(guān)的官方資料說明這個(gè)東西,MySQL InnoDB 真的是如文章所說的那樣存儲 null 的嗎?
事情描述: 我用 wordpress 給客戶開的分站,不給管理員賬號 只給編輯權(quán)限。 然后有個(gè) exe 程序 也需要鏈接 mysql 數(shù)據(jù)庫 所以需要給到用戶一個(gè)遠(yuǎn)程數(shù)據(jù)庫的賬號密碼
我想把兩個(gè)數(shù)據(jù)庫分開,因?yàn)槿绻靡粋€(gè)數(shù)據(jù)庫的話用戶可能通過進(jìn)數(shù)據(jù)庫獲取到主賬號然后想辦法把我 wordpress 的主題文件拿走
如果網(wǎng)站數(shù)據(jù)庫 跟 軟件的數(shù)據(jù)庫分開的話 那么兩個(gè)數(shù)據(jù)庫如何實(shí)時(shí)同步,還要避免用戶知道網(wǎng)站數(shù)據(jù)庫的密碼
用 mysql 數(shù)據(jù)庫觸發(fā)器能否實(shí)現(xiàn) 或者能不能設(shè)置一個(gè)庫 不同用戶訪問操作不同表的權(quán)限
現(xiàn)在有一張用戶表, 一張地址表, 地址表中有用戶的主鍵.
請問現(xiàn)在想實(shí)現(xiàn)每條用戶記錄之間要放入多個(gè)地址信息, 假定從兩張表中獲取的列是相同的, 請問可以類似 Tree 的形式嗎? 如果可以,能不能告知一下搜索的關(guān)鍵詞.MySQL/Oracle 求教. 表頭 |表頭 | 表頭| 張三 |12 歲 | 男 | 上海 |徐匯區(qū)|xx 街道| 江蘇 |南京 | xx 街道| 李四 |34 歲 | 男 | 湖北 |武漢 | xx 街道| ....
a 是 b 的主 b 是 c 的主 c 是 a 的主
那么隨便掛掉一臺,
是不是就涼涼了。。。
有解決方案嗎。
3 個(gè)項(xiàng)目都有讀寫需求,
無法做主從,
只能做主主
前兩天把公司內(nèi)一臺服務(wù)器的系統(tǒng)從 16.0.4 升級到了 20.0.4,然后就出現(xiàn)了一個(gè)問題,就是每次第二天過來都會失去之前 dhcp 給它分配的 192.168 內(nèi)網(wǎng)地址,reboot 之后又好了,然后第二天又沒了,周而復(fù)始。 請問這種情況可能是哪出問題了呢?
我在路由器上設(shè)置好了 IPV6 Tunnel, 并且內(nèi)網(wǎng)中的 win10 主機(jī)也正常獲取到了 ipv6 地址,瀏覽器測試 ipv6 也正常,但是 ubuntu 主機(jī)雖然也分配到了 ipv6 但就是 pin6 不了 ipv6 的地址,網(wǎng)關(guān)的 ipv6 可以 ping 通,IPV6 是開啟的;
有沒有誰遇到過這種情況,如何處理?
貌似不是常規(guī)的 ap 熱點(diǎn)。好像新一代的 intel 網(wǎng)卡都只支持這個(gè)。 請問是什么黑科技嗎? ubuntu 下有沒有類似的功能。不是承載網(wǎng)絡(luò)
大家好,買了一塊 pcie 的 Intel AX200 pci 網(wǎng)卡,wifi 鏈接和藍(lán)牙 5.0 開箱即用。但是無法通過界面創(chuàng)建熱點(diǎn)。 使用了 hostpad 貌似提示找不到 nl82011 驅(qū)動(dòng)。有沒有也買了這塊網(wǎng)卡的,可否分享下 hostpad conf 文件。感激不盡??!
目前使用 hostpad 貌似啟動(dòng)不了
Configuration file: /etc/hostapd/hostapd.conf HT (IEEE 802.11n) with WPA/WPA2 requires CCMP/GCMP to be enabled, disabling HT capabilities VHT (IEEE 802.11ac) with WPA/WPA2 requires CCMP/GCMP to be enabled, disabling VHT capabilities wlp1s0: interface state UNINITIALIZED->COUNTRY_UPDATE Channel 36 (primary) not allowed for AP mode, flags: 0x30053 NO-IR wlp1s0: IEEE 802.11 Configured channel (36) not found from the channel list of current mode (2) IEEE 802.11a wlp1s0: IEEE 802.11 Hardware does not support configured channel Could not select hw_mode and channel. (-3) wlp1s0: interface state COUNTRY_UPDATE->DISABLED wlp1s0: AP-DISABLED wlp1s0: interface state DISABLED->DISABLED wlp1s0: AP-DISABLED wlp1s0: CTRL-EVENT-TERMINATING hostapd_free_hapd_data: Interface wlp1s0 wasn't started nl80211: deinit ifname=wlp1s0 disabled_11b_rates=0
我自己家的臺式配置如下: CPU: AMD 3800X ROM: Corsair Vengeance 16GB 3200Hz 主板: Gigabyte x570 elite Wifi
原本是只裝了一個(gè) windows 系統(tǒng)的,當(dāng)時(shí)沒注意看內(nèi)存條的頻率,后來裝了一個(gè) ubuntu 玩玩。前段時(shí)間玩 PC Building Simulator 的時(shí)候想起來看了下自己內(nèi)存條的頻率,是默認(rèn)的 2133,然后進(jìn) BIOS 的時(shí)候就有點(diǎn)詭異了,出現(xiàn)過以下幾種情況(我把內(nèi)存條電壓調(diào)到 1.5v 了) 1 、保存完重啟會反復(fù)需要選擇系統(tǒng) 2 、調(diào)完頻率保存重啟,然后選擇 windows 系統(tǒng)開機(jī)后還是 2133 3 、3200hz 保存成功,并進(jìn)入 windows 系統(tǒng),然后開機(jī) 5 分鐘之后必定卡死 想問下大家有沒有遇到過這種情況的,怎么解決呢
@ XmlElementWrapper - 1
- 2
- 3
public class Demo { @XmlElement("item") @XmlElementWrapper(name="list) private List list; }
如何設(shè)置 list 節(jié)點(diǎn)的屬性值? 嘗試了繼承 List 接口,內(nèi)部添加 @ XmlAttribute 標(biāo)注的字段,結(jié)果不行。 不知道可有其他的思路?
gateway 默認(rèn)有個(gè) RemoveHopByHopHeadersFilter,會過濾掉 keepalivegateway 作為網(wǎng)關(guān)層,調(diào)用后面的微服務(wù)的頻次會很高,保持 keepalive 不是更好么?
平常自己用的都是 JDK8 ( SE ),公司使用的好像也是這個(gè),我開發(fā) Web 應(yīng)用也完全沒有問題。 想問問 EE 版本是否真的有存在的必要嗎,有什么我不知道的地方嗎
如題,是把他們認(rèn)為都是用戶整合在一個(gè)表里還是應(yīng)該做兩套認(rèn)證,求各位大佬給個(gè)建議
場景:用戶在掃碼支付成功后,第三方支付方會異步回調(diào)本系統(tǒng)內(nèi)的一個(gè)地址,希望收到回調(diào)返回成功后,給前端發(fā)送 您已支付成功訂單 xx 元!
之前沒做過消息發(fā)送到前端這方面的,想請教下簡單的或者常用的做法是什么,就用 websocket ? 現(xiàn)在后臺是 springboot,前端是 ios
最近在比較 mybatis 框架和 hibernate 框架,所以搭了兩個(gè)同樣內(nèi)容分別用兩個(gè)框架做的工程。但是在做時(shí)候發(fā)現(xiàn)中文 spring 整合 hibernate 框架的文章都是比較老的。之前學(xué)習(xí) springboot 看官方的教程很詳細(xì)。 有沒有什么方式更好的學(xué)習(xí) 最新框架整合的內(nèi)容。 網(wǎng)站?教程?書? 感謝各位大佬
待遇:地點(diǎn)上海-閔行 8 號線聯(lián)航路(距離地鐵站騎車一公里),7-13K 是實(shí)際薪資范圍。
要求:英語能讀文檔、MySQL 、Redis 啥的用的靠譜點(diǎn),不求資歷,應(yīng)屆都行。
來了之后,有代碼規(guī)范需要適應(yīng)一下,需要寫單元 /集成測試、數(shù)據(jù)庫遷移,會給一段時(shí)間適應(yīng),這倒不用怕。只是最近一段時(shí)間項(xiàng)目正在上線期,可能加班有點(diǎn)多,平時(shí)是可以雙休的。
拉鉤可以直接投: https://www.lagou.com/jobs/7577420.html
在 FutureTask 里面,普通寫和 CAS 寫是 混合使用的。比如 public boolean cancel(boolean mayInterruptIfRunning) { if (!(state == NEW && UNSAFE.compareAndSwapInt(this, stateOffset, NEW, mayInterruptIfRunning ? INTERRUPTING : CANCELLED))) return false; try { // in case call to interrupt throws exception if (mayInterruptIfRunning) { try { Thread t = runner; if (t != null) t.interrupt(); } finally { // final state UNSAFE.putOrderedInt(this, stateOffset, INTERRUPTED); //這里是普通寫語義 } } } finally { finishCompletion(); } return true; }
我這么解釋對嗎: 一來,這個(gè)狀態(tài)轉(zhuǎn)移是唯一的。INTERRUPTING 只能變成 INTERRUPTED 。其他線程暫時(shí)看不到 INTERRUPTED 也沒關(guān)系。(注意,暫時(shí)看不到 INTERRUPTING,會導(dǎo)致 handlePossibleCancellationInterrupt 自旋) 二來。由于 finishCompletion 有其他的 CAS 操作,執(zhí)行了 CAS 操作就相當(dāng)于強(qiáng)制刷新了內(nèi)存,所以只要 finishCompletion 執(zhí)行了 CAS,那么其他線程也就能看到 INTERRUPTED 這個(gè)狀態(tài)了。
簡單描述一下: service 中將新用戶的數(shù)據(jù)插入 user 表,然后把 userId 丟給 shiro 進(jìn)行登錄,大部分用戶都沒問題,但是偶爾會出現(xiàn)有的用戶在 realm 中通過 userId 去數(shù)據(jù)庫查詢出結(jié)果為 null 的情況,影響了后續(xù)邏輯。 // 這個(gè)是 service 中登錄的方法 public void login(String userName, String password) { // 新增用戶 User user = new User(); user.setUserName(userName); user.setPassword(password); Integer userId = userMapper.insert(user); // shiro 登錄(使用自定義 token) UserToken userToken = userToken(userId); SecurityUtil.getSubject.login(userToken); // 繼續(xù)以下邏輯... } // 這個(gè)是自定義 realm 中進(jìn)行登錄的方法,上面 SecurityUtil.getSubject.login(userToken)之后就是跑到這里面來 public class AuthRealm extends AuthorizingRealm { private AuthenticationInfo getUserAuthInfo(UserToken token) throws AuthenticationException{ Integer userId = token.getUserId(); User user = userMapper.selectById(userId); if(user == null) { // 此處就是 BUG 點(diǎn),大部分用戶正常,偶爾出現(xiàn)一個(gè)用戶查詢出來的 user 為 null,且打印日志傳進(jìn)來 token 中的 userId 有值,查數(shù)據(jù)庫也有對應(yīng)數(shù)據(jù) LOGGER.error("找不到用戶賬號:{}", token.getUserId()); throw new UnknownAccountException();//沒找到帳號 } else { AuthenticationInfo authcInfo = new SimpleAuthenticationInfo(userId.toString(), userId.toString(), this.getName()); return authcInfo; } } }
不要問我為什么還要在 realm 里面查一遍,這段代碼不是我寫的,但是就是對這個(gè) BUG 感到很疑惑,希望有大佬能夠解答。
本地應(yīng)用是 Spring Cloud Client, 想注冊到 K8s 測試環(huán)境中的 Eureka 中, 這樣方便本地調(diào)試和開發(fā)。
通常選用什么樣的方案?
現(xiàn)在我使用的方法是: DiscoveryManager.getInstance().shutdownComponent();
但是被標(biāo)記為過時(shí)了。
還有種方法是使用 springboot-actuator 的 /actuator/service-registry 這個(gè)接口。
請問,有什么更好的方法嗎?
有什么好用的 mysql ER 圖工具,可以不設(shè)置外鍵生成表關(guān)系。
使用過: pdman
可以手動(dòng)連線,但是導(dǎo)出圖片存在不全或像素模糊 mysql workbench
需要設(shè)置外鍵 dbeaver
需要設(shè)置外鍵 idea(database)/datagrip
可以虛擬外鍵生成 ER 圖,但是連線是表和表連(通過字段:字段說明的形式)。
mysql 日志
mamp 重啟了一下服務(wù),就連接不上了,之前是正常的 2020-08-18T22:57:31.6NZ mysqld_safe Logging to '/Applications/MAMP/logs/mysql_error.log'. 2020-08-18T22:57:31.6NZ mysqld_safe Starting mysqld daemon with databases from /Library/Application Support/appsolute/MAMP PRO/db/mysql57 2020-08-18T22:57:31.810140Z 0 [Warning] Insecure configuration for --secure-file-priv: Current value does not restrict location of generated files. Consider setting it to a valid, non-empty path. 2020-08-18T22:57:31.810309Z 0 [Note] /Applications/MAMP/Library/bin/mysqld (mysqld 5.7.26) starting as process 15818 ... 2020-08-18T22:57:31.813242Z 0 [Warning] Setting lower_case_table_names=2 because file system for /Library/Application Support/appsolute/MAMP PRO/db/mysql57/ is case insensitive 2020-08-18T22:57:31.815277Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2020-08-18T22:57:31.815316Z 0 [Note] InnoDB: Uses event mutexes 2020-08-18T22:57:31.815325Z 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier 2020-08-18T22:57:31.815332Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.11 2020-08-18T22:57:31.815353Z 0 [Note] InnoDB: Adjusting innodb_buffer_pool_instances from 8 to 1 since innodb_buffer_pool_size is less than 1024 MiB 2020-08-18T22:57:31.815605Z 0 [Note] InnoDB: Number of pools: 1 2020-08-18T22:57:31.815710Z 0 [Note] InnoDB: Using CPU crc32 instructions 2020-08-18T22:57:31.816944Z 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M 2020-08-18T22:57:31.825488Z 0 [Note] InnoDB: Completed initialization of buffer pool 2020-08-18T22:57:31.840284Z 0 [Note] InnoDB: Highest supported file format is Barracuda. 2020-08-18T22:57:31.865236Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables 2020-08-18T22:57:31.865383Z 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ... 2020-08-18T22:57:31.873949Z 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB. 2020-08-18T22:57:31.874787Z 0 [Note] InnoDB: 96 redo rollback segment(s) found. 96 redo rollback segment(s) are active. 2020-08-18T22:57:31.874808Z 0 [Note] InnoDB: 32 non-redo rollback segment(s) are active. 2020-08-18T22:57:31.875028Z 0 [Note] InnoDB: Waiting for purge to start 2020-08-18T22:57:31.929039Z 0 [Note] InnoDB: 5.7.26 started; log sequence number 3941949164 2020-08-18T22:57:31.929284Z 0 [Note] InnoDB: Loading buffer pool(s) from /Library/Application Support/appsolute/MAMP PRO/db/mysql57/ib_buffer_pool 2020-08-18T22:57:31.929363Z 0 [Note] Plugin 'FEDERATED' is disabled. 2020-08-18T22:57:31.934070Z 0 [Note] InnoDB: Buffer pool(s) load completed at 200819 6:57:31 2020-08-18T22:57:31.934276Z 0 [Warning] System table 'plugin' is expected to be transactional. 2020-08-18T22:57:31.935157Z 0 [Warning] InnoDB: Table mysql/innodb_table_stats has length mismatch in the column name table_name. Please run mysql_upgrade 2020-08-18T22:57:31.935201Z 0 [Warning] InnoDB: Table mysql/innodb_index_stats has length mismatch in the column name table_name. Please run mysql_upgrade 2020-08-18T22:57:31.935663Z 0 [Warning] Failed to set up SSL because of the following SSL library error: SSL context is not usable without certificate and private key 2020-08-18T22:57:31.936300Z 0 [Warning] Insecure configuration for --pid-file: Location '/Applications/MAMP/tmp' in the path is accessible to all OS users. Consider choosing a different directory. 2020-08-18T22:57:31.939338Z 0 [Warning] System table 'time_zone_leap_second' is expected to be transactional. 2020-08-18T22:57:31.939379Z 0 [Warning] System table 'time_zone_name' is expected to be transactional. 2020-08-18T22:57:31.939388Z 0 [Warning] System table 'time_zone' is expected to be transactional. 2020-08-18T22:57:31.939396Z 0 [Warning] System table 'time_zone_transition_type' is expected to be transactional. 2020-08-18T22:57:31.939403Z 0 [Warning] System table 'time_zone_transition' is expected to be transactional. 2020-08-18T22:57:31.940484Z 0 [Warning] System table 'servers' is expected to be transactional. 2020-08-18T22:57:31.941665Z 0 [Note] Failed to start slave threads for channel '' 2020-08-18T22:57:31.949350Z 0 [ERROR] Incorrect definition of table mysql.db: expected column 'User' at position 2 to have type char(32), found type char(16). 2020-08-18T22:57:31.949532Z 0 [ERROR] mysql.user has no `Event_priv` column at position 28 2020-08-18T22:57:31.949806Z 0 [ERROR] Event Scheduler: An error occurred when initializing system tables. Disabling the Event Scheduler. 2020-08-18T22:57:31.950009Z 0 [Note] /Applications/MAMP/Library/bin/mysqld: ready for connections. Version: '5.7.26' socket: '/Applications/MAMP/tmp/mysql/mysql.sock' port: 0 MySQL Community Server (GPL) 2020-08-18T22:57:32.102035Z 5 [Note] Access denied for user 'root'@'localhost' (using password: YES) 2020-08-18T22:57:36.835424Z 7 [Note] Access denied for user 'root'@'localhost' (using password: YES)
數(shù)據(jù)庫版本 MariaDB-10.4.10 ,剛在執(zhí)行一個(gè)批量替換某表字段內(nèi)容的語句,但檢查和調(diào)整了很久始終報(bào)錯(cuò) 1064,麻煩 V 友給看一下到底是哪里錯(cuò)了... update base_info set main_url = replace(main_url,'v02-vid.xxxx.com','v01-vid.xxxx.myxxxx.com');
報(bào)錯(cuò)如下 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'update base_info set main_url = replace(main_url,'v02-vid' at line 1
InnoDB 表的數(shù)據(jù)寫入順序能和 B+樹索引的葉子節(jié)點(diǎn)順序一致的話,這時(shí)候存取效率是最高的。
在數(shù)據(jù)表中,什么場景適合用主鍵 ID,什么場景適合雪花 ID ?
基本上用 Typora 記記筆記已經(jīng)滿足我的需求了,但最近迫于生計(jì)想考證,經(jīng)常需要在 Typora 里面輸入各種公式,雖然 Typora 是支持 LaTeX 語法的,但是習(xí)慣了 TeXstudio 這種能補(bǔ)全語法的編輯器,懶癌重癥患者想問問大家有沒有什么方法能讓 Typora 支持 TeX 語法補(bǔ)全,或是有沒有什么 md 編輯器是直接支持補(bǔ)全 TeX 語句的,先謝謝各位了。
刷 LeetCode 的時(shí)候有習(xí)慣整理自己的題解,以后復(fù)習(xí)也有思路。 力扣國內(nèi)站的題解上針對不同語言有不同的標(biāo)簽,點(diǎn)擊可以顯示不同的題解. 想問下這個(gè)是怎么做的,Markdown 可以做到么
貼圖有點(diǎn)麻煩,貼個(gè)鏈接吧
https://leetcode-cn.com/problems/longest-palindromic-substring/solution/zui-chang-hui-wen-zi-chuan-by-leetcode-solution/
對于 Markdown 粉的你來說,一定在各種搜索引擎上搜索過「 Markdown 表格單元格合并」之類的內(nèi)容……
哈哈,但我相信大多的搜索結(jié)果都是讓人沮喪的……
嗯,我已看到你們都在默默地點(diǎn)頭了……
──────────
從今天開始,不要再搜索了!
小編來直接給你目前最自然、最優(yōu)雅,也最貼近 Markdown 書寫習(xí)慣的解決方案!
──── 先來看看「治愈」的效果 ────
目前已支持這些合并姿勢: 多行合并 、 多列合并 ,甚至還支持 多行表頭 ( AMAZING!) ~
太多了,直接看圖吧 ↓↓↓
重點(diǎn)!重點(diǎn)!重點(diǎn)!在這里:
要實(shí)現(xiàn)以上效果,幾乎不會改變你書寫 Markdown 的習(xí)慣!
這點(diǎn)真的非常重要,因?yàn)槟壳熬W(wǎng)上各種方案都是手寫一堆 HTML 或 LaTex 標(biāo)簽之類的
──── 以下開始硬廣時(shí)間,看看我都對這些表格都干了些什么 ────
只要記?。?兩個(gè)英文等號 == :表示橫向的列合并 兩個(gè)英文句號 .. :表示豎向的行合并
是的,就是這么簡單~(但一點(diǎn)都不粗暴)
來看看上面表格在 Markdown 編輯器中的呆萌樣子 ↓↓↓ (看到那些迷人小眼神沒 ;-P )
──── 我要怎樣才能 HOLD 住這個(gè)叫 VLOOK 的神器? ────
同樣也是 SO EASY ~
在 這里查看 如何應(yīng)用 VLOOK 的主題及插件。
──────────
[上一篇] AMAZING! 原來可以這樣給你的 Markdown 文檔添加封面、封底
[下一篇] (敬請期待?。?
──────────
「 VLOOK ── 讓你的 Markdown 有了新看法 」
我會在后面陸續(xù)抽空為大家分享 VLOOK 的一些好玩的特性,要小期待一下喔~
經(jīng)過上一版大重構(gòu)后,這次 VLOOK 可以輕裝上陣了~
在 Markdown 的常見編輯器或標(biāo)準(zhǔn)語法中,比較少支持音頻、視頻的鏈接。
VLOOK 的這次 V9.19 的更新后,可直接使用圖片的語法,無感支持音頻、視頻的資源鏈接。
對于音頻,在標(biāo)準(zhǔn)瀏覽器的控件基礎(chǔ)上,還支持指定 mini 模式,方便制作有聲讀物類文檔。
(感謝來自網(wǎng)友 鈴蘭? 的建議和需求)
感謝各位 Markdown 粉對 VLOOK 的關(guān)注~還有不少計(jì)劃中的新性在路上,有興趣的可以關(guān)注項(xiàng)目的 Issues
軟件下載地址: http://soft.xiaoshujiang.com
web 版地址: http://markdown.xiaoshujiang.com
主要更新內(nèi)容
在強(qiáng)大的 markdown 編輯器基礎(chǔ)下,提供了功能更加完善的文章管理能力,距離實(shí)現(xiàn)自己的知識管理體系又更進(jìn)一步了 待辦清單總覽, 待辦清單導(dǎo)出功能, 查看使用教程 #1355 添加 webdav 第三方存儲 #1354 添加文章置頂功能, 查看使用教程 添加文章置頂過濾器 鏈接關(guān)系圖功能增強(qiáng)
更詳細(xì)的更新日志,可以在這里查看
https://github.com/suziwen/markdownxiaoshujiang/releases
介紹
小書匠是一款專注于 markdown 寫作的客戶端編輯器,支持主流的操作系統(tǒng)( window,linux,mac ),并提供強(qiáng)大的 web 在線版本。
主要功能:
各種第三方平臺存儲的集成,( 印象筆記 , Evernote , 為知筆記 , 有道筆記 , Github , Gitlab , Gitee , Dropbox , 堅(jiān)果云 , Seafile , ownCloud , Nextcloud , Yandex.ru , jsDAV , webdav-server 等) 多種導(dǎo)出格式( md,html,pdf,epub,mobi,docx 等) 豐富的語法支持(流程圖,序列圖,用例圖,甘特圖,類圖,思維腦圖) 強(qiáng)大的組件(表格組件,drawio 繪圖組件) 自定義快捷按鍵 文章間引用,跳轉(zhuǎn),文章鏈接關(guān)系圖 強(qiáng)大的文章管理,直接在小書匠里進(jìn)行筆記的整理,多種過濾器(標(biāo)簽過濾器,分類過濾器,日歷過濾器等) 待辦清單 各種個(gè)性化設(shè)置(自定義樣式,多種主題,模板等)
主要功能截圖
這段時(shí)間在外,手頭就一個(gè)平板,平常寫點(diǎn)博客,推到 GitHub 然后 Action 自動(dòng)部署,工作很長時(shí)間都挺順利.今天突然 提示了好幾個(gè)構(gòu)建失敗,刪掉最近一篇是沒問題的..百思不得其解..就一段一段添加的測試,看那一段失敗.. 1. 每次都是 hexo generate 出錯(cuò). 2. 有問題的是 `${#varname}` . 3. 但是放到代碼塊中是沒問題的 ```sh ${#varname} ``` 查閱資料無解,但求一個(gè)解答..這不科學(xué)啊,明明預(yù)覽都挺正常..
在線的那種,準(zhǔn)備自己寫個(gè)博客系統(tǒng)(純粹的自用,沒有標(biāo)簽、沒有分類),前端是 markdwon 渲染,但是后臺 markdown 編輯器選擇上就有些糾結(jié)了,百度那個(gè)大傻逼搜出來一大堆都是軟件,其它那一小堆都太龐大了。
經(jīng)過近幾個(gè)版本的快速迭代和反饋,VLOOK 的特性已變得越來越實(shí)用了~
為了更好支持計(jì)劃中的新特性,及對維護(hù)難度的降低,這次更新對插件和主題進(jìn)行了大量的重構(gòu)~
本次 V9.17 的關(guān)鍵更新內(nèi)容包括:
改善 彩虹標(biāo)簽經(jīng)過一段時(shí)間應(yīng)用和反饋后,重新設(shè)計(jì)了更直觀簡潔的語法 #標(biāo)簽# #標(biāo)簽組|標(biāo)簽# ,還能指定樣式標(biāo)識(如: #標(biāo)簽#tips ,詳見快速參考手冊) 改善 優(yōu)化主題對圖片的參數(shù)化擴(kuò)展(在編輯時(shí)就直接預(yù)覽到效果),支持更好的 Dark 模式時(shí)反色,并支持設(shè)置邊緣空白 改善 根據(jù)企業(yè)用戶反饋,提高打印功能兼容和適配性 改善 對主題和插件的代碼進(jìn)行大量的重構(gòu)和優(yōu)化,性能更優(yōu),并改善支持更多特性能在 Typora 編輯時(shí)就能生效 新增 帶了一個(gè)新的主題 Thinking,以及對原來的主題進(jìn)行了翻新 BUG 修復(fù)了一批小小小的問題~ 內(nèi)置多套原創(chuàng)主題,一鍵切換,支持私人定制
相關(guān)鏈接
VLOOK 的詳細(xì)介紹: 點(diǎn)擊查看
VLOOK 的下載地址: 點(diǎn)擊下載
我習(xí)慣使用 Vim 編輯 Markdown 文件,一直存在一個(gè)痛點(diǎn)就是粘貼圖片很不方便。
前后對比
我以前常用的操作流程: 復(fù)制圖片 /截圖; 在保存圖片對話框里一層層點(diǎn)選保存路徑,輸入文件名保存; 回到 Vim 里,手動(dòng)輸入引用圖片的表達(dá)式。
第 2 步和第 3 步是比較痛苦的,尤其是文件路徑比較深的時(shí)候,可能要點(diǎn)選好幾次。
最近偶然發(fā)現(xiàn)的一個(gè)外國小伙寫的插件 md-img-paste.vim ^1 ,能比較好地解決這個(gè)問題。現(xiàn)在的操作流程: 復(fù)制圖片 /截圖; 在 Vim 里輸入圖片相對路徑,自動(dòng)保存圖片并插入引用圖片的表達(dá)式。
注:也可以直接回車,會按默認(rèn)規(guī)則生成文件名。
效果演示:
使用方法
安裝
這個(gè)插件沒有其它依賴,使用自己習(xí)慣的插件管理方式安裝就好。
比如我使用 Vundle ^2 ,在 vimrc 里添加如下內(nèi)容,然后 :so $MYVIMRC 再 :PluginInstall 就好了。 Plugin 'ferrine/md-img-paste.vim'
配置
插件沒有給粘貼剪貼板里的圖片的操作綁定默認(rèn)快捷鍵,需要自己綁定一下,比如我是綁定到 i: autocmd FileType markdown nmap i :call mdip#MarkdownClipboardImage()
另外還有兩個(gè)可選配置項(xiàng): let g:mdip_imgdir = '.' " let g:mdip_imgname = 'image' g:mdip_imgdir 對應(yīng)圖片保存路徑前綴。我設(shè)置為了 . ,然后總是輸入相對當(dāng)前文件的路徑; g:mdip_imgname 對應(yīng)圖片保存時(shí)的缺省文件名前綴,即粘貼圖片時(shí),如果不輸入文件名直接回車,將保存為 <前綴>_日期-時(shí)間.png 名稱的文件。
我的完整 Vim 配置文件托管在 GitHub ^3 ,供參考。
It's done, enjoy it. https://github.com/ferrine/md-img-paste.vim https://github.com/VundleVim/Vundle.vim https://github.com/mzlogin/config-files/blob/master/_vimrc
背景 目前用的方案。Typora 寫作 md,然后 Onedrive 同步,docsify 網(wǎng)頁展示。 期望功能,有一個(gè)低頻需求,就是在手機(jī)上修改 md 文件。 目前考慮的方案是,iOS 上找一個(gè)能打開 iCloud 網(wǎng)盤并編輯其中文件的 App,然后做一個(gè)軟鏈接把 Onedrive 下的筆記目錄鏈到 iCloud 下。 因?yàn)槭堑皖l需求,能免費(fèi)最好免費(fèi)。
測試內(nèi)容 下了美區(qū)搜索 markdown 靠前的一些 App 。
Bear 需要訂閱才能 sync,每年 15 刀。沒往下測。
Pretext 可以讀取 iCloud 文件 /文件夾。 但編輯界面是純 md 源碼,無預(yù)覽。 單獨(dú)預(yù)覽操作有點(diǎn)麻煩,且 utf-8 文件中文顯示亂碼。 大致湊合能用 。
Noto 同步的 md 文件是以 json 的自定義格式保存的,通用性不符合我的需求。
Markdown ( icon 是白底右下角.MD ) iCloud 功能收費(fèi),沒往下試。
Drafts 上手就要了地理位置權(quán)限???算了。
MWeb 可以讀取 iCloud 文件, 但是如果在云端添加了文件,iOS 好像要重啟 App 才會刷新出來 。 編輯和預(yù)覽較方便。 各項(xiàng)功能比 Pretext 細(xì)很多。
md writer 很簡陋
Type(icon is a "#" mark) 不支持 iCloud 。
Blockquote 看上去不錯(cuò),也可以直接訪問 iCloud 。但不知道為啥即便在 iCloud 中新建了文件,都是灰色不可操作的。
Strike 看上去跟 Blockquote 幾乎一樣
總結(jié) MWeb 編輯預(yù)覽都不錯(cuò),但同步刷新不及時(shí)。 Pretext 刷新及時(shí),但編輯預(yù)覽都挺糟。 Blockquote/Strike 無法正常打開 iCloud 文件。 考慮到我只是低頻使用,我選了 MWeb 。 試得比較倉促,可能有不準(zhǔn)確的地方,就那樣吧。學(xué)習(xí)成本太高也是勸退理由。 大家有其它的可以推薦看看。
這篇文章用來講述 typora 中自動(dòng)上傳圖片到阿里云 oss 的過程,需要您會使用 php 語言,且有開通阿里云 oss 。
Typora 當(dāng)前版本:
準(zhǔn)備自定義上傳腳本 mkdir ~/run/alioss -p && cd ~/run/alioss echo '{ "name": "jake/alioss", "type": "project", "authors": [ { "name": "Jaggle", "email": " [email?protected] " } ], "require": { "aliyuncs/oss-sdk-php": "^2.3" } }' > composer.json composer install touch index.php
index.php: ', '', 'oss-cn-shanghai.aliyuncs.com' ); $res = $uploader->uploadFile('', date('YmdHis') . '-' . rand(10000, 99999) . '-' . $name, $file); echo "Upload Success:\n"; echo $res['info']['url'] . "\n"; echo $res['info']['url'];
Typrora -> 偏好設(shè)置 -> 圖像:
最后可以點(diǎn)擊 驗(yàn)證圖片上傳選項(xiàng) 進(jìn)行測試。
現(xiàn)在你可以在粘貼和插入圖片時(shí),自動(dòng)上傳至阿里云 oss 。
大佬們,今天碰到一個(gè)問題,我司有一套系統(tǒng)存在兩個(gè)端。由于采用了第三方插件需要付費(fèi)購買,在域名采購備案完成后跟第三方插件公司溝通,他們只認(rèn)定一個(gè)域名一套系統(tǒng),我司系統(tǒng)存在兩個(gè)端,比如為http://xxx.example.com 、http://yyy.example.com 兩個(gè)二級域名,按照三方說法我們需要采用兩套,領(lǐng)導(dǎo)考慮到價(jià)格較貴只想買一套,有沒法辦法通過 nginx 路徑轉(zhuǎn)發(fā)解決呢?比如:http://xxx.example.com/user http://xxx.example.com/admin 兩套系統(tǒng)的訪問,希望大佬們給解解惑
交易金額,單位為分,左補(bǔ) 0 至補(bǔ)齊 12 位,例如 000000000001 表示 1 分,000000000100 表示 1 元。
現(xiàn)在公司大部分前端項(xiàng)目都切換到 React 了,社區(qū)、論壇類,電商商品詳情頁都有 SEO 需求,然鵝 SPA 應(yīng)用 SEO 確實(shí)是個(gè)麻煩事,經(jīng)過前期實(shí)踐后總結(jié)出我們的 SEO 方案??梢钥纯聪挛?歡迎感興趣的小伙伴討論下~
SPA 的 SEO 方案對比、最終實(shí)踐
PS:安利下公司的一個(gè)任務(wù)管理神器, TaskHub 文件式任務(wù)管理
我最近心血來潮學(xué)前端, 覺得還是 React 社區(qū)力量大所以準(zhǔn)備投入這個(gè)陣營.但是跟著官方的那個(gè)下棋的教程走完之后發(fā)現(xiàn)如果想做個(gè)稍微復(fù)雜一點(diǎn)的頁面,比如百度首頁(盡管很簡潔但是對于初學(xué)者還是復(fù)雜了點(diǎn)) 那么就要找到合適的布局工具或者技術(shù)。 但是翻了一下 React 的官方文檔,似乎沒有談到如何布局的文章。 哪位 React 大佬可以發(fā)幾篇文章鏈接看看么?