diff --git a/Languages/Languages.vcxproj b/Languages/Languages.vcxproj
index 2c3ec97cb5..940da72a8f 100644
--- a/Languages/Languages.vcxproj
+++ b/Languages/Languages.vcxproj
@@ -8,52 +8,26 @@
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ ..\Externals\gettext\msgfmt
+
-
+
+
+
-
-
+
+
+
+
+
\ No newline at end of file
diff --git a/Languages/Languages.vcxproj.user b/Languages/Languages.vcxproj.user
new file mode 100644
index 0000000000..966b4ffb6f
--- /dev/null
+++ b/Languages/Languages.vcxproj.user
@@ -0,0 +1,6 @@
+
+
+
+ true
+
+
\ No newline at end of file
diff --git a/Languages/po.props b/Languages/po.props
deleted file mode 100644
index e7970c02e7..0000000000
--- a/Languages/po.props
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
- Midl
- CustomBuild
-
-
- _SelectedFiles;$(msgfmtDependsOn)
-
-
-
- False
- $(OutDir)Languages\%(Filename)\dolphin-emu.mo
- ..\Externals\gettext\msgfmt [AllOptions] [AdditionalOptions] [inputs]
- %(OutputName)
- Compiling %(Filename) locale
-
-
-
\ No newline at end of file
diff --git a/Languages/po.rules b/Languages/po.rules
deleted file mode 100644
index 9d70b9ee30..0000000000
--- a/Languages/po.rules
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Languages/po.targets b/Languages/po.targets
deleted file mode 100644
index 550e63ef9b..0000000000
--- a/Languages/po.targets
+++ /dev/null
@@ -1,83 +0,0 @@
-
-
-
-
-
- _msgfmt
-
-
-
- $(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $(ComputeLinkInputsTargets);
- ComputemsgfmtOutput;
-
-
- $(ComputeLibInputsTargets);
- ComputemsgfmtOutput;
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Languages/po.xml b/Languages/po.xml
deleted file mode 100644
index 303572a532..0000000000
--- a/Languages/po.xml
+++ /dev/null
@@ -1,140 +0,0 @@
-
-
-
-
-
-
-
-
-
- General
-
-
-
-
- Command Line
-
-
-
-
-
-
-
-
-
-
-
-
-
- Execute Before
-
-
- Specifies the targets for the build customization to run before.
-
-
-
-
-
-
-
-
-
-
- Execute After
-
-
- Specifies the targets for the build customization to run after.
-
-
-
-
-
-
-
-
-
-
-
-
-
- Additional Options
-
-
- Additional Options
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Source/Core/DolphinQt/CMakeLists.txt b/Source/Core/DolphinQt/CMakeLists.txt
index ef1434a19b..e08af734cc 100644
--- a/Source/Core/DolphinQt/CMakeLists.txt
+++ b/Source/Core/DolphinQt/CMakeLists.txt
@@ -466,11 +466,12 @@ if(GETTEXT_MSGFMT_EXECUTABLE)
foreach(po ${LINGUAS})
get_filename_component(lang ${po} NAME_WE)
if(WIN32)
- set(mo_dir ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Languages/${lang})
+ set(mo_dir ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Languages)
+ set(mo ${mo_dir}/${lang}.mo)
else()
set(mo_dir ${CMAKE_CURRENT_BINARY_DIR}/${lang})
+ set(mo ${mo_dir}/dolphin-emu.mo)
endif()
- set(mo ${mo_dir}/dolphin-emu.mo)
target_sources(dolphin-emu PRIVATE ${mo})
source_group("Localization\\\\Generated" FILES ${mo})
diff --git a/Source/Core/DolphinQt/Translation.cpp b/Source/Core/DolphinQt/Translation.cpp
index e64eaa5984..c94638c389 100644
--- a/Source/Core/DolphinQt/Translation.cpp
+++ b/Source/Core/DolphinQt/Translation.cpp
@@ -275,7 +275,7 @@ static bool TryInstallTranslator(const QString& exact_language_code)
std::string lang = qlang.toStdString();
auto filename =
#if defined _WIN32
- File::GetExeDirectory() + StringFromFormat("/Languages/%s/dolphin-emu.mo", lang.c_str())
+ File::GetExeDirectory() + StringFromFormat("/Languages/%s.mo", lang.c_str())
#elif defined __APPLE__
File::GetBundleDirectory() +
StringFromFormat("/Contents/Resources/%s.lproj/dolphin-emu.mo", lang.c_str())