Nextcloudデスクトップクライアント for Macで仮想ファイルを試す方法

※本記事は個人的な見解であり、筆者の所属するいかなる団体にも関係ございません。

# はじめに
Nextcloudは、自前のサーバを使って手軽にセキュアなファイル共有環境を実現できるオンラインストレージです。

Nextcloudへはブラウザを利用してファイル操作を行うことができることはもちろん、デスクトップクライアントアプリを利用してNextcloudサーバーに接続して、ローカルPCのエクスプローラー(Windowsの場合)、Finder(Macの場合)に同期、ファイル操作を行うことが可能です。

Windows対応のデスクトップクライアントアプリのバージョン3.2以降では、仮想ファイルという仕組みにより、Nextcloudのファイルの実体をローカル PC に同期ダウンロードせず、必要な時だけダウンロードしてファイル操作を行うことが可能です。
これによりローカルPCのストレージ消費を抑制できます。

残念ながらMac対応のデスクトップクライアントアプリでは仮想ファイルの仕組みはサポートされておりません。しかし、Mac対応のデスクトップクライアントアプリでも「開発版」という形ですが、この仕組みを試用することができます。
ここでは、Mac対応のデスクトップクライアントアプリで仮想ファイルの仕組みを使う方法をまとめました。

:::note alert
Mac対応のデスクトップクライアントアプリの仮想ファイルの仕組みは開発中であり、正式にサポートはされておりません。
この仕組みを試用することで、最悪Nextcloudのファイルが破壊、消失する等の可能性があります。
大切なファイルが保管されているNextcloudの同期ではこの仕組みを利用しないなど、細心の注意を払ってください。
:::

# Macで仮想ファイルの仕組みを試用する方法
1. 最新版の[Mac対応のデスクトップクライアントアプリ](https://nextcloud.com/install/#install-clients)をダウンロードします。ダウンロードしたインストーラーファイルを起動し、デスクトップクライアントアプリをインストールします。  
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/6ec71da9-df35-02ba-4d0e-4713bcdadae8.png)
2. Nextcloudデスクトップクライアントアプリの設定ファイル (`nextcloud.cfg`) を編集します。`nextcloud.cfg`は`(ユーザーディレクトリ)/ライブラリ/Preferences/Nextcloud`フォルダーにあります。
   ```nextcloud.cfg 編集例
   [General]
   clientVersion=3.6.2git (build 12294)
   confirmExternalStorage=true
   newBigFolderSizeLimit=500
   optionalServerNotifications=true
   showCallNotifications=true
   updateSegment=9
   useNewBigFolderSizeLimit=true
   showExperimentalOptions=true 　←←←この行を追加
   
   [Accounts]
   ~~~~~ (以下、略) ~~~~~
   ```
3. Nextcloudデスクトップクライアントアプリを起動し、「Log in」をクリックします。
　　![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/ec5d5dcc-5cc8-b857-8b53-9c6fbbdb139b.png)
4. デスクトップクライアントに同期するNextcloudのアクセスURLを入力します。
　　![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/3f323b15-6ee8-4fc9-398f-06b2a023bb75.png)
5. ブラウザが開くので、「ログイン」をクリックします。
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/1edb6ebb-09fd-c6b2-3855-3ae464e8191a.png)
6. ユーザー名とパスワードを入力しログインを行います。
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/7180d3e0-21af-f9ca-26e3-39e155f176e8.png)
7. 「アクセスを許可」をクリックします。
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/febd1d71-2670-85be-1b85-aec5ff967a01.png)
8. この表示を確認できたらデスクトップクライアントアプリのウィンドウを再度確認します。  
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/5f10c0c2-6069-8eba-fbf0-96296ea7aa03.png)
9. 「コンテンツをすぐにダウンロードする代わりに仮想ファイルを使用する (試験的)」を選択します。
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/40b33123-4831-8d36-9617-e268c09836cf.png)
10. 「試験的なプレースホルダーモードを有効にする」をクリックします。
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/e1c82224-54a2-5424-c48c-33e2e45e910c.png)
11. 「接続」をクリックします。
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/5c93ba70-dedf-8bcc-8d17-a7d5b15af0e9.png)
# 仮想ファイルでの表示
## 仮想ファイル「無効」
同期対象のNextcloudに保管されているファイル実体がローカルPCにもダウンロードされます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/a1f40d9f-6a27-b685-074c-0469f65b371c.png)

## 仮想ファイル「有効」
ローカルPCにダウンロードされていないファイルは、`(ファイル名).nextcloud`というファイル名で表示されファイルサイズは1バイトとなります。これをダブルクリックすることでファイル実体がダウンロードされ、参照できるようになります。    
ローカルPCにダウンロードされているファイルは、ファイル名の`.nextcloud`がなくなり、実際のファイルサイズとなります。  
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/316764/d4d9ae21-de44-fde7-c259-ffb062a2bef3.png)