Quantcast
Channel: 簡睿隨筆
Viewing all articles
Browse latest Browse all 897

[Obs#68] 利用QuickAdd巨集由IMDB建立影片檔案,用Minimal主題顯示成卡片

$
0
0

01|900

Minimal樣式主題是很多人使用的主題,它在4.4.0版時推出了卡片格式,將Dataview的table查詢轉換成卡片的顯示格式,再與Sortable外掛合用時則可做排序卡片的顯示。

卡片格式很適合用於蒐集資訊類型的多欄位形式,例如影片庫、書庫等。

在建立影片庫時,我們可以使用QuickAdd的movies.js搜尋IMDB,直接由IMDB讀取資料,將影片欄位與海報圖片建立成筆記,透過QuickAdd巨集可省去大量的資料輸入時間。

1. 用QuickAdd取得IMDb資訊

cards筆記需要下列外掛:
* Minimal樣式主題
* Dataview外掛
* Sortable外掛

1.1. 建立影片資訊模板

  1. 啟用核心外掛內的模板,再於【外掛選項】→【模板】→指定【模板資料夾位置】為templates
  2. 在templates資料夾建立template-movie.md,內容如下:
---
cover: {{VALUE:Poster}}
---

category:: {{VALUE:typeLink}}
director:: {{VALUE:directorLink}}
genre:: {{VALUE:genreLinks}}
imdbId:: {{VALUE:imdbID}}
ratingImdb:: {{VALUE:imdbRating}}
rating::
year:: {{VALUE:Year}}
cast:: {{VALUE:actorLinks}}
plot:: {{VALUE:Plot}}

![poster]({{VALUE:Poster}})

1.2. 申請Open Movie Database的API Key

API Key網頁申請存取Open Movie Database的API Key。輸入EMail等資訊後,網站會寄出Key與啟用鏈接給你,複製API Key並點擊啟用鏈接。

1.3. 新增QuickAdd Movie巨集

  1. 下載movies.js並存入儲存庫任意位置(建議建立專門存放JavaScript的資料夾)
  2. QuickAdd外掛選項→【Manage Macros】→輸入巨集名稱(如macro_movie)後按【Add macro】
  3. 在User Scripts輸入欄位裡選用movies.js,再按【Add】
  4. 點擊上方movies右側齒輪,在彈出的對話窗輸入申請到的OMDb API Key

upgit-20220205_1644050124.png|500

  1. 點擊【Template】以增加要使用的模板
    1. 【Template Path】選用「templates/template-movie.md」
    2. 勾選【File Name Format】
    3. 【File Name】欄位輸入:{{VALUE:fileName}}
    4. 勾選【Open】,開啟依模板建立的新檔案
    5. 勾選【Focus new pane】,將焦點移入新檔案

1.4. 新增QuickAdd Choice選單

  1. 輸入Choice名稱,如:Movie
  2. 選用【Macro】後點擊【Add Choice】
  3. 新增Choice後點擊其右側的齒輪,再選用前面新增的巨集
  4. 點擊閃電符號將此Choice加入命令面板

01|500

1.5. 測試QuickAdd Movie Choice

  1. 點擊〔Ctrl/Cmd+P〕→輸入quickadd→點擊【QuickAdd: Movie】
  2. 輸入要搜尋的電影名稱或IMDb代碼,如:Star Wars或tt0086190

01|700

▼ 在選單裡找到要建立的影片後按〔Enter〕或〔Click〕
01|700

2. Minimal樣式主題

在筆記YAML區裡使用cssClasses: cards讓筆記套用卡片格式,額外能使用的CSS樣式如下:

  • cards-align-bottom: 最後一項對齊卡片底部
  • cards-cover: 圖片尺寸填滿空間
  • cards-16-9 / cards-1-1 / cards-2-1 / cards-2-3 : 圖片比例
  • cards-cols-4~cards-cols-8: 指定卡片每列個數

3. 影片庫筆記範例

---
cssClasses: cards, cards-align-bottom, cards-cover, cards-cols-3
---
# 電影 from IMDb
```dataview
table without id ("![](" + cover + ")") as Cover, 
  file.link as Name, 
  year as Year, 
  "by " + director as Director,
  "Rating " + ratingImdb as Rating
from #movies-imdb 
sort year, imdbId 
```

## 動作片 (Action)
```dataview
table without id ("![](" + cover + ")") as Cover, 
  file.link as Name, 
  year as Year, 
  "by " + director as Director
from #movies-imdb 
where contains(string(genre), "Action")
sort year, imdbId 
```

## 喜劇片 (Comedy)
```dataview
table without id ("![](" + cover + ")") as Cover, 
  file.link as Name, 
  year as Year, 
  "by " + director as Director
from #movies-imdb 
where contains(string(genre), "Comedy")
sort year, imdbId 
```

## 喬治,盧卡斯作品

```dataview
table without id ("![](" + cover + ")") as Cover, 
  file.link as Name, 
  year as Year, 
  "by " + director as Director
from #movies-imdb 
where contains(string(director), "George Lucas")
sort year, imdbId 
```

4. 相關鏈接

5. 教學影片

##您可能也會有興趣的類似文章


Viewing all articles
Browse latest Browse all 897

Trending Articles