*.pyc

# Directories added by gclient sync and the GN build
/.cipd
/.gclient
/.gclient_entries
/build
/buildtools
/testing
/third_party/abseil-cpp/
/third_party/angle
/third_party/clang-format
/third_party/glfw
/third_party/googletest
/third_party/gpuweb
/third_party/jinja2
/third_party/jsoncpp
/third_party/llvm-build
/third_party/markupsafe
/third_party/node-addon-api
/third_party/node-api-headers
/third_party/swiftshader
/third_party/tint
/third_party/vulkan-deps
/third_party/vulkan_memory_allocator
/third_party/zlib
/tools
/out

# Modified from https://www.gitignore.io/api/vim,macos,linux,emacs,windows,sublimetext,visualstudio,visualstudiocode

### Emacs ###
*~
\#*\#
/.emacs.desktop
/.emacs.desktop.lock
*.elc
auto-save-list
tramp
.\#*

### Linux ###
.fuse_hidden*
.directory
.Trash-*
.nfs*

### macOS ###
*.DS_Store
.AppleDouble
.LSOverride
._*
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

### SublimeText ###
*.tmlanguage.cache
*.tmPreferences.cache
*.stTheme.cache
*.sublime-workspace
*.sublime-project
sftp-config.json
GitHub.sublime-settings

### Vim ###
[._]*.s[a-v][a-z]
[._]*.sw[a-p]
[._]s[a-v][a-z]
[._]sw[a-p]
Session.vim
.netrwhist
tags

### VisualStudio ###
.vs/*

### VisualStudioCode ###
.vscode/*
!.vscode/tasks.json

### Windows ###
Thumbs.db
ehthumbs.db
ehthumbs_vista.db
Desktop.ini
$RECYCLE.BIN/

### Dawn node tools binaries
src/dawn_node/tools/bin/
